Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

mySQL problem

3.9K
02 мая 2005 года
KuRST
29 / / 31.08.2004
Здравствуйте.
В пхпМайАдмине следующий запрос проходит чудесно, а вот пхп ругается и не хочет выполнять код.

mysql_connect("localhost","root") or die("Невозможно соединение с базой. Проверьте правильность логина и пароля!");
$q="SELECT * FROM data WHERE id=$act ORDER BY daten DESC";
$res=mysql_query($q);
$mass=mysql_fetch_row($res);
echo "<TR><TD>".$mass['name']."</TD></TR><TR><TD>".$mass['daten']."

</TD></TR><TR><TD>".$mass['src']."</TD></TR>";
mysql_free_result ($res);

пишет, что переменная $res не является результатом запроса. ЧТО ДЕЛАТЬ?
4
02 мая 2005 года
mike
3.7K / / 01.10.2002
Написать так

 
Код:
$res=mysql_query($q) or die(mysql_error());


и посмотреть ошибку, которую выдает MySql

Скорее всего проблема с кавычками
3.9K
03 мая 2005 года
KuRST
29 / / 31.08.2004
Цитата:
Originally posted by mike
Написать так

 
Код:
$res=mysql_query($q) or die(mysql_error());


и посмотреть ошибку, которую выдает MySql

Скорее всего проблема с кавычками



С этими кавычками просто беда.
Напишите, пожалуйста пример правильных расставлений кавычек!
Спасбо!

3.9K
03 мая 2005 года
KuRST
29 / / 31.08.2004
Цитата:
Originally posted by mike
Написать так

 
Код:
$res=mysql_query($q) or die(mysql_error());


и посмотреть ошибку, которую выдает MySql

Скорее всего проблема с кавычками



А вообще ошибка такая:
Warning: mysql_fetch_array(): 3 is not a valid MySQL result resource in z:\home\localhost\www\view.php on line...

4
03 мая 2005 года
mike
3.7K / / 01.10.2002
Неужели так сложно документацию почитать !!!

--------------------------
mysql_connect("localhost","root") or die("Невозможно соединение с базой. Проверьте правильность логина и пароля!");
$q="SELECT * FROM data WHERE id=$act ORDER BY daten DESC";
$res=mysql_query($q) or die(mysql_error()."
Запрос: ".$q."
");
if (mysql_num_rows($res)==0) print "Ничего не выбрано";

$mass=mysql_fetch_row($res);
echo "<TR><TD>".$mass['name']."</TD></TR><TR><TD>".$mass['daten']."

</TD></TR><TR><TD>".$mass['src']."</TD></TR>";
mysql_free_result ($res);
--------------------------
287
03 мая 2005 года
Shiizoo
958 / / 14.03.2004
Э.. Дык ведь база с которой ты работаешь не указана.. Вот и кидает.

Код:
error_reporting(E_ALL);

$act = 1;

if (!($cid = mysql_connect("localhost","root","")))
    die("Не удалось открыть соединение с субд");

if (!mysql_select_db("test",$cid))
    die("Не удалось выбрать бд для работы: " . mysql_error($cid));

$q = "SELECT * FROM data WHERE id = $act ORDER BY daten DESC";

if (!($r = mysql_query($q,$cid)))
    die("Не удалось выполнить запрос: " . mysql_error());

if ($row = mysql_fetch_row($r))
{
    echo <<<EOF
<TR><TD> {$row[0]} </TD></TR>
<TR><TD> {$row[1]} </TD></TR>
<TR><TD> {$row[2]} </TD></TR>
EOF;
}

mysql_free_result($r);


fetch_row возвращает пронумерованный массив, а не хэш. следовательно если юзаешь fetch_row то и поля выбирай по индексам.

если бы проверял возвр. значения там, где это следует делать, то и вопросов бы лишних не возникало :D
3.9K
03 мая 2005 года
KuRST
29 / / 31.08.2004
Спасибо ВСЕМ. Проблема уже решена!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог