Создайте комментарии и текстовые сообщения вместе в одной таблице - PullRequest
2 голосов
/ 09 июля 2011

У меня есть комментарии в таблице mysql, каждый с номером (рангом).Я бы хотел, чтобы на моем сайте эти комментарии были отсортированы по наибольшему количеству.Другими словами, все комментарии должны появляться, но в порядке убывания в зависимости от их ранга (целое число).Под каждым комментарием я также хотел бы создать текстовую область для добавления новых комментариев.Я думаю, что все это должно быть в одной таблице.Я застрял при создании таблицы, потому что количество строк варьируется в зависимости от того, сколько сообщений возвращается.

Это то, что я имею до сих пор:

<?php
include 'connect.php';
$get=mysql_query("SELECT * FROM table WHERE $x='comments'");
$numberofrows=mysql_num_rows($get);
while ($row=mysql_fetch_assoc($get)){

$comment=$row['comment'];
$rank=$row['rank'];

echo "<table>";

echo "</table>";
}


?>  

Ответы [ 2 ]

1 голос
/ 09 июля 2011
<?php
include 'connect.php';
$get=mysql_query("SELECT * FROM table WHERE $x='comments'");
$numberofrows=mysql_num_rows($get);

echo '<table>';
while ($row=mysql_fetch_assoc($get)){
   echo '<tr>'
   echo "<td>$row['comment']</td>";
   echo "<td>$row['rank']</td>";
   echo '</tr>';
}
echo '<tr>
          <td colspan="2">
              <textarea></textarea>
          </td>
      </tr>';
echo '</table>';  

?>  
1 голос
/ 09 июля 2011

Чтобы получить заказ, используйте ORDER BY в своем SQL:

SELECT * FROM table WHERE comments=$x ORDER BY rank DESC

Вы должны поместить элементы <table> вне цикла

echo '<table>';

while ($row=mysql_fetch_assoc($get)){
  echo '<tr>'
    echo "<td>$row['comment']</td>";
  echo '</tr>';
  echo '<tr>';
    echo "<td><form> ... </form></td>";
  echo '</tr>';

}

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