Forum Webscript.Ru
Общие => Базы данных => Тема начата: Tepncuxopa от 29 Ноября 2001, 17:21:05
-
При такой записи: (в скобках указаны номера строк)
(8) $query = mysql_query("SELECT * FROM \'monitor\'");
(9) $result = mysql_fetch_array($query);
Выдается следующее сообщение:
Warning: Supplied argument is not a valid MySQL result resource in c:\\program files\\apache group\\apache\\www\\index.php on line 9
Чтобы это значило, господа веб-программисты?
-
Чтобы это значило, господа веб-программисты?
Это значит, госпожа Муза, что у Вас ошибка в определении переменной query.
Немного подробнее о задачах и коде с запросами. (полный код приветствуется :) )
-
Полный код:
if (mysql_connect()) {if (!mysql_select_db("product")) {echo "Error selecting"; exit();}}
else {echo "Error connecting!"; exit();}
function PrintOption() {
$query = mysql_query("SELECT * FROM \'monitor\'");
if (!$query) {
$result = mysql_fetch_array($query);
echo "".$result[\'model\']."
";
}
else {echo "Error: ".mysql_error(); exit();}
}
?>
-
у меня иногда проскакивают такие же ошибки если отсутсвует структура таблицы из которой можно брать данные(главное не забыть чтобы были таблицы как таковые в самой базе) просто нет результата для mysql_fetch_array
-
Таблица есть. Это точно.
К тому же если бы не было результата для mysql_fetch_array, то выполнялось бы
else {echo "Error: ".mysql_error(); exit();}
или я неправильно понимаю этот условный цикл?
-
Удивительно вот это:
if (!$query)
Собственно, если бы не существовала таблица-не была бы определена переменная. А так... Нужно подумать. :)
-
результата для mysql_fetch_array
но этот warning связан не с ошибкой а именно с отсутствием результата...
-
А если эту строку написать не так
(8) $query = mysql_query("SELECT * FROM \'monitor\'");
, а так
(8) $query = mysql_query("SELECT * FROM monitor");
т.е. без кавычек
-
А вы под какой системой осуществляете этот запрос? У меня под виндой такое сообщение отображается в случае если нет результата выборки, т.е. никаких значений. Для того, чтобы не было ошибки есть два способа:
1) @$result = mysql_fetch_array($query);
Отключаем сообщение об ошибках
2)
$query = mysql_query("SELECT * FROM \'monitor\'");
if mysql_num_rows($query)==0 {echo "Не смог выбрать значения";}
else {$result = mysql_fetch_array($query);}
Первый вариант для ленивых, второй более наглядный...
-
2MadDog: Все равно не работает. (Насколько я знаю, кавычки предусмотрены синтаксисом)
2DaBugi: 2000 Винда. Сделала 2 способом. Выдает сообщение:
Warning: Supplied argument is not a valid MySQL result resource in c:\\apache\\htdocs\\index.php on line 6
Не смог выбрать значения
(6 строчка кода) if (mysql_num_rows($query)==0) {echo "Не смог выбрать значения";}
База данных и таблица существуют ТОЧНО. PhpMyAdmin их находит и показывает.
-
Оказывается: кавычки должны быть не такие \' \', а такие ``... Семен Семеныч! (с) ;)