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. eoz - 19 Февраля, 2012 - 12:41:16 - перейти к сообщению
Привет, было всё норм но потом что то раз и вылезла эта ошибка:

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in Z:\home\new\www\category.php on line 21

на всякий случай код всей страницы:

PHP:
скопировать код в буфер обмена
  1. <?PHP include("block/db.php");
  2.  
  3. if(isset($_GET['cat'])) {$cat = $_GET['cat'];}
  4.  
  5. if(!isset($_GET['cat'])) {$cat = 1;}
  6.  
  7.  
  8. $res = mysql_query("SELECT id, title FROM category WHERE id = '$cat'", $db);
  9.  
  10. if(!$res) {
  11. echo "<p>Запрос не прошёл</p>"; exit(mysql_error());
  12. }
  13. if (mysql_num_rows($res) > 0) {
  14. $myrow = mysql_fetch_array($res);
  15. }
  16. else {
  17. echo "<p>Категорий не существует в базе</p>";
  18. }
  19.  
  20. $res2 = mysql_query("SELECT title, meta_d, meta_k, FROM setting WHERE page = 'index'", $db);
  21. $myrow2 = mysql_fetch_array($res2);
  22.  
  23.  
  24. ?>
  25. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  26. <html xmlns="http://www.w3.org/1999/xhtml">
  27. <head>
  28. <meta name="keywords" content="<?PHP echo $myrow2[meta_k]; ?>" />
  29. <meta name="description" content="<?PHP echo $myrow2[meta_d]; ?>" />
  30. <title><?PHP echo $myrow[title]; ?> / <?PHP echo $myrow2[title]; ?></title>
  31.  
  32. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
  33. <link rel="stylesheet" href="style/style.css" type="text/css" />
  34. </head>
  35.  
  36. <body>
  37.  
  38.                 <?PHP include("block/head.php"); ?>
  39.  
  40.                         <?PHP include("block/menu.php"); ?>
  41.  
  42.         <div id="main">
  43.        
  44.                 <div id="content">
  45.                
  46.                
  47. <div id="editblock">
  48. <h1 >Категории</h1>
  49. <hr  />
  50. <?PHP include("block/sidebar.php"); ?>
  51. </div>
  52.  
  53. <div id="editplace">
  54. <?PHP echo "Заметки из категории $myrow[title]"; ?>
  55. <?PHP
  56. do {
  57. echo    "<div class='zag'><a href='note?id=$myrow[id]'>$myrow[title]</a></div>
  58.                    <div class='txt'>
  59.                    $myrow[des]
  60.                    </div>
  61.                    <div class='aurhot'>Автор: $myrow[author]</div>";
  62. }
  63. while ($myrow = mysql_fetch_array($res));
  64.  
  65. ?>
  66.                                
  67. </div>
  68.                
  69.                
  70.                
  71.  
  72.                
  73.                                        
  74.                 </div>
  75. <div class="clear"></div>              
  76.                         <div id="lastport">
  77.                        
  78.                                 <?PHP include("block/lastp.php"); ?>
  79.                        
  80.                         </div>
  81.                
  82.         </div>
  83. <div class="clear"></div>
  84.  
  85. <div id="footer">
  86.        
  87.         <?PHP include("block/footer.php"); ?>  
  88.        
  89. </div>
  90.        
  91. </body>
  92. </html>
  93.  
2. etoYA - 19 Февраля, 2012 - 12:45:09 - перейти к сообщению
eoz пишет:
if(!$res) {

echo "<p>Запрос не прошёл</p>"; exit(mysql_error());

}


тоже самое для $res2
3. sKaa - 19 Февраля, 2012 - 12:46:07 - перейти к сообщению
eoz, ошибка в каком-то $res/$res2 ... = mysql_query('...'); а именно в самом запросе, функция возвращает FALSE вместо ссылки не ресурс и ты это FALSE автоматически без проверки что там вернулось if($res) пихаешь в mysql_fetch_array который принимает в качестве аргументов только ссылки на ресурс, о чем собственно он тебе и пишет в ошибках.
4. OrmaJever - 19 Февраля, 2012 - 15:00:32 - перейти к сообщению
а возвращает false она потому что в запросе синтаксическая ошибка, после meta_k стоит запятая, её там быть не должно.

 

Powered by ExBB FM 1.0 RC1