PHP не сможет отображать данные

Возможный дубликат:
PHP не сможет отображать данные

Я пытаюсь получить данные из базы данных и отображать их на странице, используя их уникальный идентификатор. Ниже приведен мой код

<?php

 session_start();

require_once('config.php');

    //create query statement
    $query = 'SELECT * FROM player_info';

    //make the query from db
    $myData = mysql_query($query, $conn)
    OR exit('Unable to select data from table');




    while($row = mysql_fetch_array($myData, MYSQL_ASSOC)){ 


                $playerID       = $row['id']; 
                $player_bio     = $row['player_bio']; 
                $achievements   = $row['player_achts'];


    }

?>

и вот как я код для эха данных

<?php

                             if ($playerID == 1)
                             {
                                echo '<p class="playerAchievesL">' . $achievements . '</p><p class="playerInfoL">' . $player_bio . '</p>';
                             }

                             ?>

Я не получаю никаких сообщений об ошибках от php, но данные ничего не отображают... помогите пожалуйста... большое спасибо

4 ответа

Вы получаете всех игроков со стола, и для каждого игрока перезаписываете $playerID, $player_bio а также $achievements, После while петли, $playerID содержит идентификатор последнего загруженного игрока

Если у вас более одного игрока, это скорее всего не $playerID с 1,

Проблема здесь. вы перезаписываете значения на каждой итерации

 while($row = mysql_fetch_array($myData, MYSQL_ASSOC)){ 


            $playerID       = $row['id']; 
            $player_bio     = $row['player_bio']; 
            $achievements   = $row['player_achts'];


}

Просто отобразите их прямо в цикле:

 while($row = mysql_fetch_array($myData, MYSQL_ASSOC)){ 


            echo $row['id']; 
            echo $row['player_bio']; 
            echo $row['player_achts'];


}

Если я правильно понимаю, вам нужно поместить эхо внутри while() цикл:

while($row = mysql_fetch_array($myData, MYSQL_ASSOC)){ 

            $playerID       = $row['id']; 
            $player_bio     = $row['player_bio']; 
            $achievements   = $row['player_achts'];

            echo '<p class="playerAchievesL">' . $achievements . '</p><p class="playerInfoL">' . $player_bio . '</p>';
}

Ваш цикл while может перезаписывать $pkayerID, поэтому, если последний идентификатор игрока не равен 1, он ничего не отобразит.

Попробуйте поставить строку echo после строки $ reachmets, чтобы увидеть, так ли это.

Другие вопросы по тегам