|
|
|
|
<?php
$a=mysql_query('SELECT * FROM table');
if($a) { echo "Есть результаты"; } else {echo "нет результатов";}
?>
|
Мне не понятно почему эта конструкция не работает :(, а использовать всякие mysql_fetch_array на мой взгляд не рационально.
Букваольно надо, что бы $a в случае если данные есть, то вернула TRUE, а если нет, то FALSE. | |
|
|
|
|
|
|
|
для: Lenux
(30.07.2005 в 10:31)
| | объясните поподробнее, как она у вас н работает?.. возвращает всегда false или что? | |
|
|
|
|
|
|
|
для: Lenux
(30.07.2005 в 10:31)
| | То, что вы написали не имеет смысла, без подключения к базе данных.
Или Вы опустили Config.php? | |
|
|
|
|
|
|
|
для: Lenux
(30.07.2005 в 10:31)
| | Присоединяюсь к вопросу idborn, как выглядит "не работа"? Использование функции mysql_fetch_array() происходит уже после того, как корректно отработала функция mysql_query(), поэтому пока она не работает использовать её действительно не рационально.
Попробуйте вывести последную ошибку при помощи функции mysql_error()
<?php
$a = mysql_query('SELECT * FROM table');
if($a)
{
echo "Есть результаты";
}
else
{
echo "нет результатов<br>";
exit(mysql_error());
}
?>
|
PS Вопросы, посвящённые MySQL лучше сразу задавать в соответствующем разделе http://www.softtime.ru/forum/index.php?id_forum=3 | |
|
|
|
|
|
|
|
для: cheops
(30.07.2005 в 12:04)
| | Здравствуйте, не знаю по теме ли я пишу, но у меня проблема наподобе : пытаюсь писать гостевую книгу по образцу книги "Самоучитель php 5" авторов Кузнецов М. и Симдянов И. стр.377 отпечатал 3 файла addrec,config,index сделал бд как написано ,запускаю а там ->
"Parse error: syntax error, unexpected T_VARIABLE in D:\main\html\guest\config.php on line 7"
проверяю config.php там в строке 7 ->
$dbcnx = @mysql_connect($dblocation,$dbuser,dbpasswd);
думаю что с бд не может соедениться, что это может быть? | |
|
|
|
|
|
|
|
для: Коляка
(31.07.2005 в 19:15)
| | Посмотрите не пропущена ли точка с запятой у предыдущего оператора. Вообще перебирать код гостевой книге не обязательно, можно воспользоваться уже готовым кодом этой гостевой из раздела downloads
http://www.softtime.ru/info/gbmysql.php | |
|
|
|
|
|
|
|
для: cheops
(31.07.2005 в 20:58)
| | спасибо нашел ошибки, исправил перезапустил и вот -> не хочет работать mysql | |
|
|
|
|
|
|
|
для: Коляка
(31.07.2005 в 22:56)
| | Чего пишет? | |
|
|
|
|
|
|
|
для: cheops
(31.07.2005 в 23:06)
| | как я понимаю это при неудачной попытки соединиться с бд , пишет -> "В настоящий момент сервер базы данных не доступен, поэтому кoрректное отображение страницы не доступно" .... -> т.к. в коде это предусмотренно:
$dbcnx = @mysql_connect($dblocation,$dbuser,dbpasswd);
if (!$dbcnx)
{
echo( "<p> В настоящий момент сервер базы данных не доступен, поэтому кoрректное отображение страницы не доступно </p>");
exit();
}
if (!@mysql_select_db($dbname,$dbcnx) )
{
echo ("<p> В настоящий момент сервер базы данных не доступен, поэтому кoрректное отображение страницы не доступно </p>");
exit();
}
а вот почему не может, вариантов наверное много.... я думаю что у меня бд плохо была настроена при установке........ | |
|
|
|
|
|
|
|
для: Коляка
(31.07.2005 в 23:59)
| | >как я понимаю это при неудачной попытки соединиться с бд , пишет -> "В
>настоящий момент сервер базы данных не доступен, поэтому кoрректное
>отображение страницы не доступно" .... -> т.к. в коде это предусмотренно:
Да, у вас выводится эта надпись? | |
|
|
|
|
|
|
|
для: cheops
(01.08.2005 в 00:32)
| | Да так он и выводит эту надпись, только я н знаю по какой причине: при попытке соединиться с сервером бд или с самой бд, | |
|
|
|
|
|
|
|
для: cheops
(01.08.2005 в 00:32)
| | Да так он и выводит эту надпись, только я н знаю по какой причине: при попытке соединиться с сервером бд или с самой бд, | |
|
|
|
|
|
|
|
для: Коляка
(01.08.2005 в 06:24)
| | Коляка. А у тебя пароль почему не как переменная, а неизвестно что. Если проблема не в этом то извиняюсь. | |
|
|
|
|
|
|
|
для: HoLsT
(01.08.2005 в 10:30)
| | А да действительно, вместо $dbpasswd используется dbpasswd. | |
|
|
|
|
|
|
|
для: Lenux
(30.07.2005 в 10:31)
| | Вообще в этой конструкции нет логики потому, что даже если в таблице не будет результатов он должен вернуть true. для определения есть результаты или нет мохно воспользоваться mysql_num_rows(), или тем же mysql_fetch_array(). | |
|
|
|
|
|
|
|
для: Ziq
(01.08.2005 в 06:54)
| | Дело было действительно в $dbpasswd, но все равно что то не так сообщение не добавляеться ->
//запрос к базе данных на добавление сообщения
$query = "inset into quest values
(0,'$name','$city','$email','$url','$msg','-',now(),0;";
if(mysql_query($query))
{
print "<HTML><HEAD>\n";
print "<META HTTP-EQUIV = 'Refresh' CONTENT = '0; URL = index.php'>\n";
print "</HEAD></HTML>\n";
exit ();
}
else
{
echo "<a href = 'index.php'>Вернуться</a>";
echo("<p>Ошибка при добавлении сообщения</p>");
echo ("<p>$query</p>");
exit();
у меня выдаёт ->
Вернуться
Ошибка при добавлении сообщения
inset into quest values (0,'коляка ',' ','latina23@mail.ru ',' ','','-',now(),0;
что это может быть?
----> прошу меня простить за может быть банальные вопросы , но я только ещё начинаю в этой сфере и мне многое интерестно<---- | |
|
|
|
|
|
|
|
для: Коляка
(01.08.2005 в 18:46)
| | Нет завершающей круглой скобки в SQL-запросе, т.е. вместо
inset into quest values (0,'коляка ',' ','latina23@mail.ru ',' ','','-',now(),0;
|
следует писать
inset into quest values (0,'коляка ',' ','latina23@mail.ru ',' ','','-',now(),0);
|
----> прошу меня простить за может быть банальные вопросы , но я только ещё начинаю в этой сфере и мне многое интерестно<----
Вы можете задавать столько вопросов, сколько вам потребуется для того, чтобы разобраться в проблеме - у нас нет ограничений :))), постараемся ответить на все. | |
|
|
|
|
 2.9 Кб |
|
|
для: Коляка
(01.08.2005 в 18:46)
| | выводит ошибку почти такую же только теперь со скобкой ->
Вернуться
Ошибка при добавлении сообщения
inset into quest values (0,'коляка','петрозаводск','latina23@mail.ru','http://www.ruart.nm.ru','','-',now(),0);
может я не правильно таблицу в mysql пострил | |
|
|
|
|
|
|
|
для: Коляка
(01.08.2005 в 19:57)
| | phpMyAdmin выдает внизу страницы такую фразу может дело в ней -->>
The mbstring PHP extension was not found and you seem
to be using multibyte charset. Without mbstring extension
phpMyAdmin is unable to split strings correctly
and it may result in unexpected results.
mbstring PHP расширение не был найден, и Вы, кажется,
используете мультибайт charset. Без mbstring расширения
phpMyAdmin неспособен расколоть вереницы правильно,
и это может кончиться неожиданными результатами.
-- может ли это быть проблемой.... | |
|
|
|
|
|
|
|
для: Коляка
(01.08.2005 в 19:57)
| | прошу прощения , но я из-за плохой связи отправил 6 одинаковых сообщении я их исправил на точки чтоб не захламлять окно ...... | |
|
|
|
|
|
|
|
для: Коляка
(01.08.2005 в 19:57)
| | . | |
|
|
|
|
|
|
|
для: Коляка
(01.08.2005 в 19:57)
| | . | |
|
|
|
|
|
|
|
для: Коляка
(01.08.2005 в 19:57)
| | . | |
|
|
|
|
|
|
|
для: Коляка
(01.08.2005 в 19:57)
| | . | |
|
|
|
|
|
|
|
для: Коляка
(01.08.2005 в 19:57)
| | Выведите в блоке else ещё комментарий к ошибке при помощи функции mysql_error()
<?php
echo mysql_error();
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(01.08.2005 в 22:44)
| | получилось вот это -->
Вернуться
Ошибка при добавлении сообщения
inset into quest values (0,'коляка','петрозаводск','latina23@mail.ru','http://www.ruart.nm.ru','','-',now(),0);
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'inset into quest values (0,'коляка','петрозаводск','latina23@mail.ru' at line 1
перевод:
Вы имеете ошибку в вашем SQL синтаксисе; проверьте руководство, которое соответствует вашей MySQL версии сервера для правильного синтаксиса, чтобы использовать около 'вставки в ценности поисков (0, ' коляка,'' петрозаводск,'' latina23@mail.ru' на линии 1 | |
|
|
|
|
|
|
|
для: Коляка
(02.08.2005 в 06:52)
| | Мне кажется у тебя проблема с одинарными и двойными кавычками в запросе, которые разделяют втавочные данные. Попробуй поставить пробелы после каждой запятой и в пустых столбцах (это кстати упрощает читабельность кода).
И еще не знаю правильно ли это, но я бы функцию now() засунул в какую-нибудь переменную. до формирования запроса.
$now=now();
$query=inset into quest values (0, 'коляка' ,'петрозаводск', 'latina23@mail.ru', 'http://www.ruart.nm.ru', ' ', '-', '$now', 0);
Если ошибка все равно появляется, то проверь типы данных в таблице. | |
|
|
|
|
|
|
|
для: holst
(02.08.2005 в 08:14)
| | попробовал изменить на -->
$query=inset into quest values (0, 'коляка' ,'петрозаводск', 'latina23@mail.ru', 'http://www.ruart.nm.ru', ' ', '-', '$now', 0);
не получаеться выдает много ошибок.......... | |
|
|
|
|
|
|
|
для: Коляка
(02.08.2005 в 06:52)
| | >Ошибка при добавлении сообщения
А можно выложить структуру БД? У вас путаницы с типами полей нет? | |
|
|
|
|
|
|
|
для: Loki
(02.08.2005 в 11:16)
| | прикрепил скрин бд, я думаю что я там что то не так сделал --> | |
|
|
|
|
|
|
|
для: Коляка
(02.08.2005 в 06:52)
| | Ошибка в операторе INSERT - пропущена буква r.
inset into quest values (0,'коляка','петрозаводск','latina23@mail.ru','http://www.ruart.nm.ru','','-',now(),0);
|
| |
|
|
|
|
|
|
|
для: cheops
(02.08.2005 в 13:15)
| | исправил спасибо теперь работает почти все, не показывает только текст сообщения | |
|
|
|
|
|
|
|
для: Коляка
(02.08.2005 в 20:28)
| | Приведите пожалуйста участок кода, который выводит сообщение.
PS Если не сложно, давайте под это новую тему заведём, а то эта уже слишком длинная. | |
|
|
|
|
|
|
|
для: cheops
(02.08.2005 в 21:27)
| | согласен. | |
|
|
|