Русское сообщество fluxbb

Быстрый лёгкий надёжный форумный движок

Вы не вошли.

Объявление

Вы можете внести свой вклад в содержание сайта. Жертвователи попадут в почетную группу "Спонсоры". Поддержать сайт.

#1 2014-07-25 18:09:31

zevilz
Новичок
Зарегистрирован: 2014-07-25
Сообщений: 5

Не проходит запрос к базе

Создал дополнительную страницу в профиле для личных данных для почтовых отправлений. Но не могу добавить/обновить данные в базе при подтверждении формы.
добавление данных:

$db->query('INSERT INTO post_info (user_id, post_surname, post_name, post_patronymic, post_index, post_country, post_region, post_city, post_address) VALUES('.$id.', '.$post_surname.', '.$post_name.', '.$post_patronymic.', '.$post_index.', '.$post_country.', '.$post_region.', '.$post_city.', '.$post_address.')') or error('Unable to insert post info', __FILE__, __LINE__, $db->error());

обновление данных:

$db->query('UPDATE post_info SET post_surname='.$post_surname.', post_name='.$post_name.', post_patronymic='.$post_patronymic.', post_index='.$post_index.', post_country='.$post_country.', post_region='.$post_region.', post_city='.$post_city.', post_address='.$post_address.' WHERE id='.$id) or error('Unable to update post info', __FILE__, __LINE__, $db->error());

Оба запроса выше не проходят. Все переменные в запросах имеют верные данные. Если в запросах заменить переменные произвольными данными, то запросы срабатывают. Почему блокирутся мои переменные?
Заранее спасибо за ответы.

Offline

#2 2014-07-25 18:19:58

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Не проходит запрос к базе

@zevilz, текст ошибок которые при этом выводятся на экран можно увидеть?

Offline

#3 2014-07-25 18:21:42

zevilz
Новичок
Зарегистрирован: 2014-07-25
Сообщений: 5

Re: Не проходит запрос к базе

@Visman, "Unable to insert post info" при добавлении и "Unable to update post info" при обновлении

Редактировался zevilz (2014-07-25 18:25:22)

Offline

#4 2014-07-25 18:38:46

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Не проходит запрос к базе

@zevilz, ошибки не отображаются полностью, но могу предположить, что строки вставляются без обработки функцией $db->escape().
Вот запрос из кода движка для примера:

$db->query('INSERT INTO '.$db->prefix.'posts (poster, poster_id, poster_ip, message, hide_smilies, posted, topic_id, user_agent) VALUES(\''.$db->escape($username).'\', '.$pun_user['id'].', \''.$db->escape(get_remote_address()).'\', \''.$db->escape($message).'\', '.$hide_smilies.', '.$now.', '.$tid.', \''.$db->escape($_SERVER['HTTP_USER_AGENT']).'\')') or error('Unable to create post', __FILE__, __LINE__, $db->error());

+ строки обернуты в кавычки при вставке.

Offline

#5 2014-07-25 18:45:59

zevilz
Новичок
Зарегистрирован: 2014-07-25
Сообщений: 5

Re: Не проходит запрос к базе

@Visman, спасибо, обертывание в кавычки помогло решить проблему smile
escape() не нужен, данные уже обработаны

Offline

Подвал доски

Под управлением FluxBB. Хостинг Hostens