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 :: mysql_query не работает с переменными.
Строка запроса собирается несколькими методами, но в итоге, содержание вроде бы в порядке...???
Пробовал подставить $get = "title, isbn-sn,........";
И все работает.
Так же пробовал экранировать вот так:
Покинул форум
Сообщений всего: 40
Дата рег-ции: Окт. 2014
Помог: 0 раз(а)
esterio пишет:
а это уже не подходит
Я пробовал и без `` то есть и экранировать там было не чего. Но все равно не работает.
DelphinPRO пишет:
Добавь строчку, чтобы увидеть сообщение ошибки, которое выдает база.
Вставил и вот что выдает:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' `isbn-sn`, `issue_date`, `author`, `publisher`, `descriptio' at line 1
Но где там ошибка синтекса .???
Еще один вопрос!!!
Где то прочитал, что просто вставлять переменные в sql запрос, не рекомендуют. На сколько я понял, дело лишь в БЕЗОПАСНОСТЬ.
Так ли это ??? (Добавление)
Не работает....
Пробовал скопировать var_dump($select) с браузера, вставить в консоль phpMyAdmin, и все работает...
А из файла - ошибит...
Мелкий
Отправлено: 06 Января, 2015 - 13:20:05
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
p33t пишет:
$get = rtrim($get, ", ");
Во-первых, вторым аргументом указывается список символов. У вас символы явно упорядочены, что похоже на логическую ошибку.
Во-вторых, вот этот вот   наводит на мысль, что и в запросе написана какая-то глупость в том же духе.
p33t пишет:
Где то прочитал, что просто вставлять переменные в sql запрос, не рекомендуют.
Данные вставлять в запрос нельзя. В принципе нельзя.
Строить сам запрос динамически - никак кроме как конкатенацией строк просто не получится.
----- PostgreSQL DBA
p33t
Отправлено: 06 Января, 2015 - 13:44:03
Новичок
Покинул форум
Сообщений всего: 40
Дата рег-ции: Окт. 2014
Помог: 0 раз(а)
Все, разобрался...
Мелкий пишет:
Во-первых, вторым аргументом указывается список символов. У вас символы явно упорядочены, что похоже на логическую ошибку.
Во-вторых, вот этот вот   наводит на мысль, что и в запросе написана какая-то глупость в том же духе.
Дело в том, что когда я вставлял вторым аргументом "," ни чего не менялось. А мне надо было убрать последнюю запятую из строки. Вот так я и выкрутился. С   все сработало.
Но пытался с помощью конкатенации составить строку запроса из элементов массива.
Да, звучит как то глупо
Но все работало когда в массиве был один элемент.
И сама строка вроде как OK. В браузере строка выглядела как надо. Но вот в запросе выдает ошибку.
Я взял все запихал в массив, implode'нуллл его и все заработало.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.