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

  #14868  
Старый 23.02.2010, 12:15
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме:
6075534

Репутация: 2731


Отправить сообщение для mailbrush с помощью ICQ
По умолчанию

Цитата:
Сообщение от DiHWO  
Dark_cracker,
PHP код:
$result mysql_query("SELECT `lalala` FROM `table` WHERE lalala='tratata' ");
$num mysql_num_rows($result);
if (
$num == 1)
{
echo 
'Такая запись уже есть';

Вместо lalala пиши то поле, которое хочешь проверить.
Также можно писать так:
PHP код:
$result mysql_query("SELECT * FROM `table` WHERE lalala='tratata' "); 
Это будет означать: Выбрать все поля из таблицы table где lalala = tratata.
Вместо table пиши имя твоей таблицы.
Вместо tratata пиши текст, и если этот текст в твоем поле будет, то скрипт выдаст "Такая запись уже есть".
Ага... ла-ла-ла, тра-та-та Неплохие константы кодера... Во-первых, никто не говорил, что поле `lalala` - уникальное, соответственно может быть несколько записей в таблице с его одинаковым значением. Твой скрипт будет успешно работать только при уникальном значении `lalala`, а если же в таблице будет больше одной записи, то проверка не пройдет и скрипт продолжит свою работу. Дальше, насчет "можно писать так, а можно и так" - "писать" можно как угодно, а вот запрос должен быть сформулирован конкретно. Если человеку надо проверить существование записи в таблице, то объясни мне, ЗАЧЕМ ему выводить оттуда все данные? Лишний раз нагружать СУБД.

Dark_cracker , юзай
PHP код:
$result mysql_query("SELECT NULL FROM `tableName` WHERE `fieldName` = 'fieldValue'");
$count mysql_num_rows($result);
if (
$count)
{
    
#запись есть в БД
} else
{
    
#записи нету

 
Ответить с цитированием