Показать сообщение отдельно

  #4  
Старый 12.09.2008, 16:55
Ponchik
Постоянный
Регистрация: 30.08.2005
Сообщений: 730
С нами: 10892546

Репутация: 2274


По умолчанию

Цитата:
Сообщение от emik  
я же написал:
$s = mysql_query('SELECT * FROM `nazva_stolbca` where `nazva_stolbca` = `$_GET['name']`'); if ($s == '' ) { echo 'такого значения нет'}; логика думаю должна быть понятна, но в синтаксисе ошыбки есть
Какой ужос...
Дня начала, после mysql_query делай выводи echo mysql_error(); он тебе скажит чё нетак
Но ща я скажу

$s = mysql_query('SELECT * FROM `nazva_stolbca` where `nazva_stolbca` = `$_GET['name']`');
Нарк? Если юзаеш переменные, надо юзать " а не '

$s = mysql_query('SELECT * FROM `nazva_stolbca` where `nazva_stolbca` = `$_GET['name']`');
Нарк?! Вот тут синтаксическая ошибка, ковычки друг другу мешают

$s = mysql_query('SELECT * FROM `nazva_stolbca` where `nazva_stolbca` = `$_GET['name']`');
Нарег?! В `` беруться название таблиц, колонок, БД и всего такого, значения веруться в '' (две одинарные ковычки)

$s = mysql_query('SELECT * FROM `nazva_stolbca` where `nazva_stolbca` = `$_GET['name']`');
Дураг?! Этоже SQL Inj! Нужна фильтрация!

Короче вариант вот такой, юзай:
$name = mysql_real_escape_string($_GET['name']);
$s = mysql_query("SELECT * FROM `nazva_tablici` where `nazva_stolbca` = '$name'");

Цитата:
Сообщение от Doom123  
if(!$s) echo 'такого значения нет';
Что за бред?!
Яже уже показывал!
if(!mysql_num_rows($s)) echo 'такого значения нет';

Вот пробуй свой способ
PHP код:
$q mysql_query('SELECT * FROM `mysql`.`user` WHERE 1=2');
if(!
$q) echo 'error'; else echo 'ok'
Это запрос ничего не вернёт, но скрипт выведет OK т.к. переменная $s существует и она содержит информацию (пустую, но содержит)
Такчто ни в коем случае нельзя юзать if(!$q)
!$q сработает только если mysql_query вызвало ошибку

Последний раз редактировалось Ponchik; 12.09.2008 в 17:07..
 
Ответить с цитированием