Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Не выводит комментарий
Форумы портала PHP.SU » » Вопросы новичков » Не выводит комментарий

Страниц (1): [1]
 

1. dreamfactor - 13 Июня, 2013 - 14:14:18 - перейти к сообщению
это код где я вывожу комментарии
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.                         //  ID комментария
  3. $id_article = isset($_GET['id_article']) ? (int)$_GET['id_article'] : 0;
  4. if ($id <= 0) {
  5.   die('invalid topic ID');
  6. }
  7.                 $res = mysql_query("select comment from comments where id_article like $id_article") or die ("Error! query – show comments");
  8.  while($row = mysql_fetch_array($res))
  9.  {
  10.                echo '<div><p>'.$row['comment'].'</p></div>'; }?>


это код обработчика

PHP:
скопировать код в буфер обмена
  1. $comment = $_POST['comment'];
  2.                         $id_article = $_GET['id_article'];
  3.  
  4.                        
  5.                         $query = "INSERT INTO comments (id_article,comment) VALUES ('$id_article','$comment')";
  6.                                                          
  7.                                         $result = mysql_query($query) or die(mysql_error());;



но, почему то не выводит комментарий, когда убираю проверку на ид , то выводит , но на всех страницах тот же комментарий
2. imya - 13 Июня, 2013 - 15:05:06 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $res = mysql_query("select comment from comments where id_article like {$id_article}") or die ("Error! query – show comments");


Попробуйте так.
3. dreamfactor - 13 Июня, 2013 - 19:15:41 - перейти к сообщению
imya пишет:
PHP:
скопировать код в буфер обмена
  1. $res = mysql_query("select comment from comments where id_article like {$id_article}") or die ("Error! query – show comments");


Попробуйте так.


не помогло Огорчение
4. vanicon - 13 Июня, 2013 - 19:24:01 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $res = mysql_query("select comment from comments where id_article = $id_article") or die ("Error! query – show comments");
5. dreamfactor - 13 Июня, 2013 - 19:55:04 - перейти к сообщению
vanicon пишет:
PHP:
скопировать код в буфер обмена
  1. $res = mysql_query("select comment from comments where id_article = $id_article") or die ("Error! query – show comments");


и так пробовал , тоже не выводит , выводит только если так :

PHP:
скопировать код в буфер обмена
  1. $res = mysql_query("select comment from comments )


но тогда получается что комментарий будет висеть на всех страницах, ну то есть бред
6. vanicon - 13 Июня, 2013 - 20:04:46 - перейти к сообщению
dreamfactor
В смысле не выводит, ошибка какая? или просто нет записей удовлетворяющие запросу.
7. dreamfactor - 13 Июня, 2013 - 20:19:33 - перейти к сообщению
vanicon пишет:
dreamfactor
В смысле не выводит, ошибка какая? или просто нет записей удовлетворяющие запросу.


просто нет записей

в базе данных сохраняет
8. vanicon - 13 Июня, 2013 - 20:29:02 - перейти к сообщению
dreamfactor
Сами в phpmyadmin посмотрите есть ли там записи удовлетворяющие условию, заодно посмотрите тип поля id_article.
9. dreamfactor - 13 Июня, 2013 - 20:42:54 - перейти к сообщению
vanicon пишет:
dreamfactor
Сами в phpmyadmin посмотрите есть ли там записи удовлетворяющие условию, заодно посмотрите тип поля id_article.



записи есть , id_article int(11) AUTO_INCREMENT
(Добавление)
dreamfactor пишет:
vanicon пишет:
dreamfactor
Сами в phpmyadmin посмотрите есть ли там записи удовлетворяющие условию, заодно посмотрите тип поля id_article.



записи есть , id_article int(11) AUTO_INCREMENT



я еще сделал так : подставил


тогда вывело комментарий с этим ид , все как надо , я думаю может здесь проблема в получение правильного ид
10. VenZell - 14 Июня, 2013 - 09:51:39 - перейти к сообщению
dreamfactor, а в переменной $id_article у вас, часом, не строка? Попробуйте выполнить приведение типов и сделать выборку. Все равно выдается пустой результат?
PHP:
скопировать код в буфер обмена
  1. $res = mysql_query("select comment from comments where id_article = " . (int)$id_article) or die ("Error! query – show comments");
11. sheff2000 - 14 Июня, 2013 - 10:39:09 - перейти к сообщению
а еще лучше - для начала посмотреть что у Вас в переменную $id_article попадает

измените код вывода на следующий и посмотрите чему будет равен ID_article
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. //  ID комментария
  4. $id_article = isset($_GET['id_article']) ? (int)$_GET['id_article'] : 0;
  5. if ($id <= 0)
  6. {
  7.    die('invalid topic ID');
  8. }
  9. $res = mysql_query("select comment from comments where id_article = $id_article") or die ("Error! query – show comments");
  10.  
  11. while($row = mysql_fetch_array($res))
  12. {
  13.   echo '<div>
  14.                 ID_article = '.$id_article.'
  15.                 <p>'.$row['comment'].'</p>
  16.         </div>';
  17. }?>
  18.  

есть сомнение что у Вас $_GET['id_article'] содержит нужные значения, а не 0 (ноль)

VenZell пишет:

dreamfactor, а в переменной $id_article у вас, часом, не строка? Попробуйте выполнить приведение типов и сделать выборку. Все равно выдается пустой результат?


у него первой строкой в коде идет проверка наличия в массиве $_GET переменной id_article и в случаи энного преобразование значения в тип int

 

Powered by ExBB FM 1.0 RC1