Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Правильное написание переменных в запросе
Покинул форум
Сообщений всего: 8
Дата рег-ции: Дек. 2012
Помог: 0 раз(а)
[+]
"SELECT `id` FROM `users` WHERE `id`='{$id}'";
Имена таблиц и столбиков рекомендую взять в ``
Саныч
Отправлено: 03 Января, 2013 - 00:45:04
Участник
Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010 Откуда: Украина, Запорожье
Помог: 62 раз(а)
Первый вариант сработает, но числа заключать в кавычки не нужно! Это я про id. В кавычки заключаются строки.
Третий вариант - ошибка!
Второй и четвертый - все норм. Тут уже больше от стиля вашего зависит. Я, к примеру, использую конкатенацию, а все тело запроса в одинарные кавычки. Это и работает на каплю быстрее, чем поиск в строке, и выглядит как-то получше.
Вобщем ваш пример я бы так записал:
----- Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
LIME
Отправлено: 03 Января, 2013 - 00:46:47
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
3 не ошибка а просто глупость
Саныч
Отправлено: 03 Января, 2013 - 00:48:28
Участник
Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010 Откуда: Украина, Запорожье
Помог: 62 раз(а)
LIME, ошибка, ошибка, приглядись...
Но и глупость тоже
----- Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
LIME
Отправлено: 03 Января, 2013 - 00:48:38
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
сорь....ошибка
кавычку не приметил
alnik-75
Отправлено: 03 Января, 2013 - 00:52:54
Посетитель
Покинул форум
Сообщений всего: 338
Дата рег-ции: Сент. 2012 Откуда: Гродно, Беларусь
Помог: 0 раз(а)
в 3 варианте я ошибочну одинарную кавычку указал. Переменную id я указал для примера. Переменная может быть и строковой. А для чего указываются обратные кавычки -`?
Саныч
Отправлено: 03 Января, 2013 - 00:58:05
Участник
Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010 Откуда: Украина, Запорожье
Помог: 62 раз(а)
alnik-75, в mysql есть зарезервированные слова. Использовать их в качестве имен таблиц и столбцов можно, но тогда нужно обрамлять в косые кавычки. Если же вы просто напишите такое слово, получите ошибку.
Поэтому либо заключайте все в кавычки, либо запомните какие слова относятся к зарезирвированным.
----- Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
alnik-75
Отправлено: 03 Января, 2013 - 00:59:49
Посетитель
Покинул форум
Сообщений всего: 338
Дата рег-ции: Сент. 2012 Откуда: Гродно, Беларусь
Помог: 0 раз(а)
Спасибо, Саныч!!!!!!
Muxa
Отправлено: 03 Января, 2013 - 14:49:56
Частый гость
Покинул форум
Сообщений всего: 247
Дата рег-ции: Март 2012 Откуда: Россия, Тверь
Помог: 5 раз(а)
не только зарезервированные слова. Некоторые называют поля в таблице, например с мылом так e-mail
если написать запрос
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.