Показать несколько записей из MySQL - PullRequest
1 голос
/ 08 августа 2011

У меня есть php-страница, на которой я хочу, чтобы она отображала все темы форума одновременно. Это текущий код БД, который у меня есть, он отображается только в потоке.

mysql_connect("localhost", "", "") or die("could not connect to mysql"); 
mysql_select_db("") or die("could not connect to db");


$result = mysql_query("SELECT * FROM reference")
or die(mysql_error());  


$row = mysql_fetch_array( $result );

echo "<strong>ref_thread_id:</strong> ".$row['ref_thread_id'].'<br />';
echo "<strong>ref_thread_prefix:</strong> ".$row['ref_thread_prefix'].'<br />';
echo "<strong>ref_thread_topic:</strong> ".$row['ref_thread_topic'].'<br />';
echo "<strong>ref_thread_content:</strong> ".$row['ref_thread_content'].'<br />';

Как мне заставить его выплевывать каждую запись в этой таблице?

Спасибо.

Ответы [ 3 ]

2 голосов
/ 08 августа 2011

Вы должны использовать цикл while. функции выборки получают только одну строку за раз.

while($row = mysql_fetch_array($result)) {
   echo ...
}
1 голос
/ 08 августа 2011

Вы только захватываете первую запись, просматривая каждую:

while ( $row = mysql_fetch_array( $result )) {
  echo "<strong>ref_thread_id:</strong> ".$row['ref_thread_id'].'<br />';
  echo "<strong>ref_thread_prefix:</strong> ".$row['ref_thread_prefix'].'<br />';
  echo "<strong>ref_thread_topic:</strong> ".$row['ref_thread_topic'].'<br />';
  echo "<strong>ref_thread_content:</strong> ".$row['ref_thread_content'].'<br />';
}
0 голосов
/ 08 августа 2011

Используйте цикл:

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
    printf("ID: %s  Name: %s", $row[0], $row[1]);  
}

(Пример детали взят из http://php.net/manual/en/function.mysql-fetch-array.php)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...