Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка при запросе из PHP. Ошибка при обработке простейшего запроса 
:(
    Опции темы
MedVed
Дата 26.6.2005, 11:54 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Люди, никак не могу въехать, выручайте.
Система: Win98 + Apache 2.0.50 + PHP 5.0.1 + MySql 4.0.21.
Все настроено и работает.
Простейший код:
Код

$link = mysql_connect('localhost', 'root', '') or die("Нет контакта!");
mysql_select_db('mysql') || die("База не открывается!");
$res = mysql_query('select * from user') || die("Ошибочка в запросе!");
echo mysql_num_rows($res);
mysql_close($link);

Выдает ошибку:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in Путь к Апачу\htdocs\tests\index.php on line 4
Понятно, глюк позникает из-за $res, в котором после mysql_query должен находится результатат запроса. Такое ощущение, что результат туда не попадает. Как пофиксить?
Я грешу на систему, поскольку раньше все работало.




  Вверх
Mal Hack
Дата 26.6.2005, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 8
Всего: 261



выведи mysql_error после mysql_query и смотри какая ошибка.

Цитата(MedVed @ 26.6.2005, 12:54)
||

or
PM ICQ   Вверх
Guest
Дата 26.6.2005, 17:56 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Итак, исправленный код:
Код

$link = mysql_connect("localhost", "root", "") or die("Нет контакта!");
mysql_select_db("mysql", $link) || die("База не открывается!");
$res = mysql_query('select * from user', $link) || die("Ошибочка в запросе!");
echo mysql_num_rows($res);
echo mysql_errno().": ".mysql_error()."<br />";
mysql_close($link);

Который, как и ожидалось smile, ничего не выдал (точнее, выдал нуль, как признак отсутствия ошибок).
|| или or принципиальной роли не играет, просто первое, по некоторым источникам, должно работать быстрее.
Видимо, проблемма все таки в системе. Если до 24:00 ничего толкового не подскажут придется реинсталить.

  Вверх
Irokez
Дата 26.6.2005, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 5
Всего: 53



1) у тебя в базе данные то есть?
2) попробуй аналогичный запрос кинуть в mysql клиент
PM   Вверх
MedVed
Дата 26.6.2005, 20:56 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











2Irocez:
Блин, база mysql, таблица user, вхожу рутом, соединение проходит - естественно, данные есть (запись для рута хотя бы)! Запрос в консольке (мысль, кстати, хорошая, спасибо) к mysql-клиенту это подтвердил.
  Вверх
Irokez
Дата 26.6.2005, 21:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 5
Всего: 53



MedVed от Irokez smile
Мал Хак был прав, надо использовать or
набил твой скрипт, вышла та же ошибка, заменил || на or, заработало.. ищу причину:
Код

<?php
$link = mysql_connect("localhost", "root", "") or die(mysql_errno().": ".mysql_error());
mysql_select_db("mysql", $link) or die(mysql_errno().": ".mysql_error());
$res = mysql_query('select * from user', $link) or die(mysql_errno().": ".mysql_error());
echo mysql_num_rows($res);
echo mysql_errno().": ".mysql_error()."<br />";
mysql_close($link);
?>

Добавлено @ 21:07
smile а ну правильно, || - производит операцию "ИЛИ" с результатом mysql_query('select * from user', $link) и функции die() и записывает в переменную $res - в результате получается
Цитата
not a valid MySQL result resource

Добавлено @ 21:08
единственное не пойму почему скрипт не выполняет die()...
PM   Вверх
MedVed
Дата 30.6.2005, 15:54 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











ХЕХ! smile Так и есть.
Протупил. Исправил - заработало.
Спасибо всем.
P.S.
И все-таки не покидает меня навязчивая мысль, что где-то видел я работающий код с || smile
  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0605 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.