MySQL / PHP tüm satırları göstermiyor

0 Cevap php

PHP / MySQL ile basit bir mesaj panosu oluşturarak Im. Kullanıcılar kendi adını ve hemen mesajı görüntüler javascript bir mesaj girin ve bir veritabanında php / mysql saklar. Sayfa yüklendiğinde, bir biçimlendirilmiş listede veritabanındaki tüm mesajları görüntülemek gerekir.

Ancak, benim php keyfi sadece bazı mesajların görüntüleniyor gibi görünüyor. Bunlar doğru kronolojik sırayla ancak bazı eksik ve sadece 4 tanesi görüntüler. Elle veritabanındaki girişleri bakarak, ben yayınlanmıştır iletiler aslında kendi tabloda saklanır edildiğini görebilirsiniz. Onlar sadece ALL görüntülenen değiliz. garip.

Mesajları görüntüler İşte HTML / PHP:

<?php 
    $records = getMessages(); //see getMessages() function below
    $names = $records["names"];
    $messages = $records["messages"];
    $dates = $records["dates"];

    for($i = count($records); $i > 0; $i--){ ?>
    <div class="message">
        <p class="message_txt"><?php echo $messages[$i];?></p>
        <div>
            <div class="message_name">
                <?php echo $names[$i];?>
            </div>
            <div class="message_date">
                <small>
            <?php 
                echo "Posted on ";
                echo date("F j, Y",strtotime($dates[$i]));
        ?>
        </small>
        </div>
    </div>
</div>
<?php } ?>

İşte getMessages (yukarıdan) fonksiyonu:

function getMessages(){
    $conn = connect("wedding");
    $ids;
    $names;
    $messages;
    $dates;
    $get_messages_query = "SELECT id, name, message, date 
               FROM messages;";
    $get_messages_result = mysql_query($get_messages_query,$conn) or die(mysql_error());
    $i = 0;
    while($row = mysql_fetch_array($get_messages_result)){
    $ids[$i] = $row["id"];
    $names[$i] = $row["name"];
    $messages[$i] = $row["message"];
    $dates[$i] = $row["date"];
    $i++;
    }

    $entries = array("ids" => $ids,
                     "names" => $names,
                     "messages" => $messages,
                     "dates" => $dates
               ); 
    return $entries;
}

Ve bu çıktı:

<div class="message"> 
    <p class="message_txt">Yo this is a message</p> 
    <div> 
    <div class="message_name">Bob</div> 
    <div class="message_date"><small>Posted on September 18, 2010</small></div> 
    </div>                  
</div> 
<div class="message"> 
    <p class="message_txt">This is a message another</p> 
    <div> 
    <div class="message_name">Andrew</div> 
    <div class="message_date"><small>Posted on September 6, 2010</small></div> 
    </div> 
</div> 
<div class="message"> 
    <p class="message_txt">And another message</p> 
    <div> 
    <div class="message_name">Andrew</div> 
    <div class="message_date"><small>Posted on September 6, 2010</small></div> 
    </div> 
</div> 
<div class="message"> 
    <p class="message_txt">This is a message</p> 
    <div> 
    <div class="message_name">Andrew</div> 
    <div class="message_date"><small>Posted on August 27, 2010</small></div> 
    </div> 
</div> 

Im emin burada gitmiyor nedir. Yeterince basit görünüyor. Bunu ben göremiyorum bazı küçük aptalca hata olabilir herhalde ... ama ben göremiyorum.

Herhangi bir yardım mutluluk duyacağız.

0 Cevap