Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
prudkiy
179 / 147 / 55
Регистрация: 21.07.2013
Сообщений: 908
#1

Не прохдит запрос в базу mysql с кавычками

24.01.2015, 02:15. Просмотров 614. Ответов 15
Метки нет (Все метки)

Всем доброго, у меня вот такое - есть запрос к базе mysql на запись данных
PHP
1
$myBase->query("INSERT IGNORE INTO `timeform_1` (`id` ,`date` ,`time` ,`horseName` ,`stadion` ,`amount` ,`horseNumber` ,`bsp` ,`space`)VALUES (NULL , '$date', '$time', '$name', '$stadion', '$row', '$num', '$bsp', '$place')");
Проблема в том что когда в переменной храниться запись с кавычкой, к примеру $name = "test'go";
то тогда запрос не проходит. Я то понимаю что это из за того что кавычки лишнее появляются но вот как с этим бороться ума не приложу. Кто что посоветует, помогите )

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.01.2015, 02:15
Ответы с готовыми решениями:

Запись в базу mysql
Подскажите создал базу и в ней создал таблицу user с полем name при отправке...

Помощь с добавлением в базу mysql
Не могу разобраться с ошибкой.. точнее её вообще нет но ничего не происходит я...

Php+mysql запись в базу
Привет дорогие друзья! Подскажите пожалуйста. Я только изучаю эти языки....

Перенести базу из txt на MySQL сервер?
Добрый вечер, форумчане. Имеется сайт, работает на текстовой базе. Как все это...

Не записываются данные в базу данных mysql
Приветствую! При регистрации, ошибок нет, говорит что регистрация успешна, а...

15
BarbosLV
363 / 401 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
24.01.2015, 02:18 #2
Ты что прикалываешься?
mysql_real_escape_string()
1
prudkiy
179 / 147 / 55
Регистрация: 21.07.2013
Сообщений: 908
24.01.2015, 04:14  [ТС] #3
BarbosLV спс, ну реально не знал что есть такая функция, как то все не приходилось такие данные писать.
))) хе, ну я и.................... ) еще раз спасибо

Добавлено через 1 час 34 минуты
блин, тут такое дело - на локалке все как ожидал работает - экранирует и записывает в базу. Закинул на хост - а он там чтоб вместо записи с кавычками - пустые строки пишет. Че за хрень ?

Добавлено через 17 минут
пишет ошибку - Warning: mysql_real_escape_string(): Access denied for user 'www-data'@'localhost' (using password: NO) in /var/www/serg/data/www/wmm.ru/koni/script/parse.php on line 310 Warning: mysql_real_escape_string(): A link to the server could not be established in /var/www/serg/data/www/wmm.ru/koni/script/parse.php on line 310
0
Jodah
Эксперт PHP
2704 / 2376 / 1013
Регистрация: 01.08.2012
Сообщений: 8,405
24.01.2015, 10:31 #4
Он пишет, что логин/пароль к базе данных неправильный.
0
prudkiy
179 / 147 / 55
Регистрация: 21.07.2013
Сообщений: 908
24.01.2015, 12:43  [ТС] #5
что то такое. Читал что такое может быть из того использование функции mysql_real_escape_string() есть до соединения с базой. Это было бы ясно, ведь как тогда узнать кодировку, но соединения с уже установлено та и чего же на локалке (денвер) все гуд.
Но все ровно наверно дело в кодировке - исполз. mysql_escape_string() и все норм работает.

Только вот так и не понял в чем дело
0
Jodah
Эксперт PHP
2704 / 2376 / 1013
Регистрация: 01.08.2012
Сообщений: 8,405
24.01.2015, 18:50 #6
Возможно соединение открыли, но в каком-то месте закрыли и забыли об этом. А может открыли несколько соединений. Поскольку ошибка говорит о том, что нельзя установить идентификатор сессии с БД:
HTML5
1
Warning: mysql_real_escape_string(): A link to the server could not be established in /var/www/serg/data/www/wmm.ru/koni/script/parse.php on line 310
0
prudkiy
179 / 147 / 55
Регистрация: 21.07.2013
Сообщений: 908
24.01.2015, 19:16  [ТС] #7
В начале скрипта соеденение устанавливается, а в конце закрывается. И все таки - почему данная ошибка есть только при седеннении с удаленой базой, базы то индентичны. Непонимать это я
0
BarbosLV
363 / 401 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
24.01.2015, 20:09 #8
Ну судя по ошибке ты функцию юзаешь через жопу. Ну ка, ну ка, покаж код.
0
prudkiy
179 / 147 / 55
Регистрация: 21.07.2013
Сообщений: 908
24.01.2015, 22:53  [ТС] #9
ну хз, может и через жопу, хотя почему?
вот кусок кода который пишет в базу
PHP
1
2
3
4
5
foreach ($resArrTF1 as $el) {
$name = trim($el[2]);$stadion = trim($el[3]);$row = trim($el[4]);$num = trim($el[5]);$bsp = trim($el[6]);$place = trim($el[7]);
$name = mysql_escape_string($name);$stadion = mysql_escape_string($stadion);
 $myBase->query("INSERT IGNORE INTO `timeform_1` (`id` ,`date` ,`time` ,`horseName` ,`stadion` ,`amount` ,`horseNumber` ,`bsp` ,`space`)VALUES (NULL , '$date', '$time', '$name', '$stadion', '$row', '$num', '$bsp', '$place')");
                     }
Соединение, которое храниться в myBase, открыто в начале скрипта и закрыто в конце.
0
JimUSA
Web Programmer
324 / 285 / 121
Регистрация: 28.09.2011
Сообщений: 1,566
24.01.2015, 22:56 #10
PHP
1
mysql_real_escape_string()
0
prudkiy
179 / 147 / 55
Регистрация: 21.07.2013
Сообщений: 908
24.01.2015, 23:06  [ТС] #11
как говорил выше, что в связи с тем что mysql_real_escape_string() выдает ошибку (так же описано выше) использую mysql_escape_string()
0
BarbosLV
363 / 401 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
24.01.2015, 23:07 #12
Мистика однако варнинг приходит на mysql_real_escape_string() А в предоставленном коде мы такую конструкцию не наблюдаем.
0
JimUSA
Web Programmer
324 / 285 / 121
Регистрация: 28.09.2011
Сообщений: 1,566
24.01.2015, 23:08 #13
prudkiy, Сорри пропустил
0
prudkiy
179 / 147 / 55
Регистрация: 21.07.2013
Сообщений: 908
24.01.2015, 23:12  [ТС] #14
вот то меня и интересует почему она могла бы выдавать эту ошибку, такс сказать - что послужило поводом?

Добавлено через 1 минуту
BarbosLV вот чего тут . Я показал уже рабочий код, который ща работает
0
BarbosLV
363 / 401 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
24.01.2015, 23:15 #15
PHP
1
$name = mysql_real_escape_string(trim($el[2]));
Если при такой записи, тоже даст ошибку то я чего то не знаю.

Добавлено через 46 секунд
Цитата Сообщение от prudkiy Посмотреть сообщение
Я показал уже рабочий код, который ща работает
Я тоже не внимательно читал
0
JimUSA
Web Programmer
324 / 285 / 121
Регистрация: 28.09.2011
Сообщений: 1,566
24.01.2015, 23:15 #16
prudkiy, Почему mysql_real_escape_string выдает ошибки?
0
24.01.2015, 23:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2015, 23:15

Запрос в базу
Доброго времени суток, появилась проблема: Есть такой код: ...

Как закачать MySql-базу на сервер в Интернете?
Расскажите полжалуйста поподробнее,как закачать MySql-базу на сервер в...

Можно ли как-то перегнать базу Access в MySQL?
можно ли как-то перегнать базу аксес в мускл? асес поддерживает скл запросы,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru