Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: скрипт не работает!
 
 автор: ZHUR   (20.11.2007 в 15:32)   письмо автору
 
 

Не работает скрипт:
<?php
if(empty($id))
{
echo "
<form>
введите id человека (целое число)<input type=text name=id><input type=submit>
</form>
";
exit;
};

mysql_connect("localhost", "root", "");
mysql_select_db("book1");
$id=$_GET["id"];

$sq="select * from test1 where id='$id'";
$q=mysql_query($sq);
if(!$q) die("Ошибка при работе с базой даных:<br>$sq");
if($r=mysql_fetch_object($q))
echo $r->name;
else echo "записи не найдены";

?>
В браузере выводится пустая страница при любых значениях идентификатора.

   
 
 автор: Faraon   (20.11.2007 в 15:59)   письмо автору
 
   для: ZHUR   (20.11.2007 в 15:32)
 


<?php
if(empty($_GET[id]))
{
echo 
"
<form method=GET>
введите id человека (целое число)<input type=text name=id><input type=submit>
</form>
"
;
exit;
};

mysql_connect("localhost""root""");
mysql_select_db("book1");
$id=$_GET["id"];

$sq="select * from test1 where id=$id";
$q=mysql_query($sq);
if(!
$q) die("Ошибка при работе с базой даных:<br>$sq");
if(
$r=mysql_fetch_object($q))
echo 
$r->name;
else echo 
"записи не найдены";

?>

   
 
 автор: Axxil   (20.11.2007 в 16:05)   письмо автору
 
   для: Faraon   (20.11.2007 в 15:59)
 

Эта строчка бессмыслена.

if($r=mysql_fetch_object($q)) 

условие будет выполняться всегда

   
 
 автор: Faraon   (20.11.2007 в 16:11)   письмо автору
 
   для: Axxil   (20.11.2007 в 16:05)
 

Да не заметил

$sq="select * from test1 where id=$id";
$q=mysql_query($sq);
if(!$q) die("Ошибка при работе с базой даных:<br>$sq");
if(mysql_num_rows($q)>0){
$r=mysql_fetch_object($q);
echo $r->name;
}else
 echo "записи не найдены";

   
 
 автор: Unkind   (20.11.2007 в 19:27)   письмо автору
 
   для: Axxil   (20.11.2007 в 16:05)
 

Нет. Оно не выполнится при empty set.

   
 
 автор: Faraon   (20.11.2007 в 20:53)   письмо автору
 
   для: Unkind   (20.11.2007 в 19:27)
 

Это верно, но если честно я бы скрипт вообще построил по другому

   
 
 автор: Axxil   (20.11.2007 в 21:59)   письмо автору
 
   для: Unkind   (20.11.2007 в 19:27)
 

да, ступил что-то
empty == false

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования