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

Форум MySQL

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

 

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

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

тема: адресная строка и идентификатор статьи
 
 автор: Bvz   (04.03.2009 в 12:59)   письмо автору
 
 

для того, чтоб определить каккую статью публикоавть на странице, использую index.php?id=1 например, т.е. получаю id и выгружаю соответствующую статью из БД, а если ползователь ввел index.php?id=66, а статей всего 16 получается безобразие, каким образом можно избежать сего?

  Ответить  
 
 автор: amigo63   (04.03.2009 в 13:38)   письмо автору
 
   для: Bvz   (04.03.2009 в 12:59)
 

с помощью mysql_num_rows(); :)

  Ответить  
 
 автор: Bvz   (04.03.2009 в 13:45)   письмо автору
 
   для: amigo63   (04.03.2009 в 13:38)
 

я о другом

  Ответить  
 
 автор: Axxil   (04.03.2009 в 14:17)   письмо автору
 
   для: Bvz   (04.03.2009 в 12:59)
 

Вы выбираете строку из базы по её id. Так? Если строки с id = 66 не существует, то и результат запроса будет пустым. Вот и проверяйте


<?
$result 
mysql_fetch_assoc($query);
if(empty(
$result)){
  echo 
"Статья не найдена";
}
?>

  Ответить  
 
 автор: Trianon   (04.03.2009 в 15:25)   письмо автору
 
   для: Axxil   (04.03.2009 в 14:17)
 

только всё же
<?
$result 
mysql_query($query);
$row mysql_fetch_assoc($result);
if(empty(
$row)){
  echo 
"Статья не найдена";
}
?> 

  Ответить  
 
 автор: Bvz   (04.03.2009 в 15:39)   письмо автору
 
   для: Trianon   (04.03.2009 в 15:25)
 

а для каких это целей делаеться?

  Ответить  
 
 автор: Trianon   (04.03.2009 в 15:50)   письмо автору
 
   для: Bvz   (04.03.2009 в 15:39)
 

что именно делается?

  Ответить  
 
 автор: Bvz   (04.03.2009 в 16:00)   письмо автору
 
   для: Trianon   (04.03.2009 в 15:50)
 

ну вот эту проверку

<?
$result 
mysql_query($query);
$row mysql_fetch_assoc($result);
if(empty(
$row)){
  echo 
"Статья не найдена";
}
?> 

  Ответить  
 
 автор: Axxil   (04.03.2009 в 16:05)   письмо автору
 
   для: Bvz   (04.03.2009 в 16:00)
 

Чтобы понять, есть статья или нет. Если выборка пустая, значит статьи с таким номером не существует.

  Ответить  
 
 автор: Bvz   (04.03.2009 в 16:16)   письмо автору
 
   для: Axxil   (04.03.2009 в 16:05)
 

и все?

  Ответить  
 
 автор: Axxil   (04.03.2009 в 16:21)   письмо автору
 
   для: Bvz   (04.03.2009 в 16:16)
 

угу. А надо то чего?

  Ответить  
 
 автор: Axxil   (04.03.2009 в 16:01)   письмо автору
 
   для: Trianon   (04.03.2009 в 15:25)
 

Я так имел ввиду:
<?
$query 
mysql_query($sql);
$result mysql_fetch_assoc($query);
if(empty(
$result)){
  echo 
"Статья не найдена";
}
?> 


Уж не стал расписывать подключение к базе и выполнение запроса. Предполагается что человек умеет это делать.

  Ответить  
 
 автор: Trianon   (04.03.2009 в 17:19)   письмо автору
 
   для: Axxil   (04.03.2009 в 16:01)
 

я не про то. query - это запрос. Не отклик.
Вы конечно вольны выбирать имена переменных как угодно. Но глаз режет.

  Ответить  
 
 автор: Axxil   (04.03.2009 в 17:24)   письмо автору
 
   для: Trianon   (04.03.2009 в 17:19)
 

А мне как раз глаз режет

$result = mysql_query($query);


так как интуитивно полагаю, что $result - массив с результатами выполнения запроса.

Но, это вопрос привычки и стандартов кодирования.

  Ответить  
Rambler's Top100
вверх

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