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 » PHP » SQL и Архитектура БД » Ошибка с БД. нид хелп

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

1. SOUR - 04 Ноября, 2010 - 14:05:34 - перейти к сообщению
Проблема в следующем
На сайте есть новости - эти новости должны выводится и в index.php и в своих категориях.
тело у меня везде одно и поддключается как блок.
тобишь в индексе я создаю переменную $main_index = 1; и передаю её в блок бади.
Там ловлю её, и делаю запрос (в базе поле index изначально равен 1)

вот код:

PHP:
скопировать код в буфер обмена
  1. <?PHP if (isset($_POST['main_index']))  {$main_index=$_POST['main_index'];}?>
  2. <td width="707" valign='top'><?PHP echo $myrow['text'];
  3. $result=mysql_query ("SELECT * FROM data WHERE cat='$cat' OR index='$main_index'",$connect);
  4. if (!$result)
  5. {echo "<p>Запрос на выборку данных из базы не прошел...... ПРОЩЕ ГОВОРЯ ЭПИК ФЭЙЛ КТО ЗАСРАЛ БАЗУ ?!</p>"; /* exit(); */}
  6. if (mysql_num_rows($result)>0)
  7. .............
  8.  


а вот ошибка "Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\SERVER\xampp\htdocs\main\blocks\body.php on line 6"

ошибка выводится везде и в категориях и в index.
прошу помочь
2. Uchkuma - 04 Ноября, 2010 - 14:17:50 - перейти к сообщению
А ключ в массиве действительно с долларом? $_POST['$main_index']

mysql_query возвращает false, потому и такая ошибка.
3. Варяг - 04 Ноября, 2010 - 14:18:18 - перейти к сообщению
чегото не понятно, мож знак бакса лишний?
PHP:
скопировать код в буфер обмена
  1. $main_index=$_POST['main_index'];}
4. SOUR - 04 Ноября, 2010 - 14:24:09 - перейти к сообщению
Варяг пишет:
чегото не понятно, мож знак бакса лишний?

да, лишний, отредактировал.
Но ошибка не уходит...
5. Uchkuma - 04 Ноября, 2010 - 14:33:04 - перейти к сообщению
SOUR, занесите строку запроса в переменную и выведите ее на экран.
6. SOUR - 04 Ноября, 2010 - 14:44:07 - перейти к сообщению
Uchkuma пишет:
SOUR, занесите строку запроса в переменную и выведите ее на экран.



после этого таже ошибка
"Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\SERVER\xampp\htdocs\main\blocks\body.php on line 5"
7. Uchkuma - 04 Ноября, 2010 - 14:47:11 - перейти к сообщению
Вы меня не поняли! Что такое строка запроса?
PHP:
скопировать код в буфер обмена
  1. $sql = "SELECT * FROM data WHERE cat='$cat' OR index='$main_index'";
  2. echo $sql;
Что выводится на экран?
(Добавление)
И вообще, вы прочитали, что я вам выше написал?
Uchkuma пишет:
mysql_query возвращает false, потому и такая ошибка.
Значит нужно разобраться, почему запрос не проходит. А если запрос не прошел, то конечно же функциям mysql_num_rows и mysql_fetch_array не с чем работать.
8. SOUR - 04 Ноября, 2010 - 14:57:46 - перейти к сообщению
при выводе ничего не изменилось
9. Uchkuma - 04 Ноября, 2010 - 15:01:14 - перейти к сообщению
SOUR, вы меня убиваете ((( Покажите мне, что вывелось.
10. CenapaTop - 04 Ноября, 2010 - 15:04:43 - перейти к сообщению
index - зарезервированное слово в mysql.
11. SOUR - 04 Ноября, 2010 - 15:16:30 - перейти к сообщению
Uchkuma пишет:
SOUR, вы меня убиваете ((( Покажите мне, что вывелось.

ничего не выводилось =\

CenapaTop пишет:
index - зарезервированное слово в mysql.

Большое спасибо, помогло переименование!)
12. Uchkuma - 04 Ноября, 2010 - 15:24:05 - перейти к сообщению
SOUR пишет:
Большое спасибо, помогло переименование!
Думаю, ваша проблема бы решилась, если еще названия полей в запросе заключить в обратные апострофы.

 

Powered by ExBB FM 1.0 RC1