Ошибка при регистрации (SQL Driver Error): spam_service_log - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

Теги не найдены

  • 2 Страниц +
  • 1
  • 2

Ошибка при регистрации (SQL Driver Error): spam_service_log

#1 Пользователь не на сайте   cyrax_02 ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 136
  • Регистрация: 19-Февраль 15
  • Репутация: 0
  • IPB version:3.4.x
 

Отправлено 07 Ноябрь 2016 - 17:32

При регистрации нового пользователя отображается страница SQL Database Error.
Согласно логам, ошибка заключается в том, что IP.Board добавляет запись в таблицу (spam_service_log) так:
mySQL query error: INSERT INTO ..._spam_service_log (`log_date`,`log_code`,`log_msg`,`email_address`,`ip_address`) VALUES(1478525386,'License Key Expired','','...','...')

В ответ mysql ругается:
Error: 1366 - Incorrect integer value: 'License Key Expired' for column 'log_code' at row 1

Ругается потому, что в таблице столбец (log_code) имеет тип smallint(1), а передаётся строка (License Key Expired). При этом все записи (включая и самые древние, когда этой ошибки ещё не возникало) в указанной таблице в этом столбце имеют значение 0.

Задача заключается в том, чтобы объяснить этот артефакт. Возможные варианты:
1. Некорректная логика работы форумного скрипта (вместо кода вставляет в запрос строковый идентификатор)
2. В таблице изначально поле (log_code) имело строковый тип, но после обновления mysql до последней версии и последующего апгрейда баз данных (mysql_upgrade, как это обычно рекомендуют делать после обновления mysql) тип поля был изменён на smallint(1), а все имеющиеся значения конвертированы в целое значение 0.
0

#2 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 048
  • Регистрация: 20-Март 09
  • Репутация: 2 414
  • IPB version:3.1.x
 

Отправлено 07 Ноябрь 2016 - 17:59

Если лицензия не активна, спам сервис нужно отключить.
log_code это код статуса подозрительности пользователя, формата tinyint (там четыре статуса). Ваша активная лицензия истекла, поэтому ips возвращает сообщение с ошибкой вместо кода.
0

#3 Пользователь не на сайте   cyrax_02 ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 136
  • Регистрация: 19-Февраль 15
  • Репутация: 0
  • IPB version:3.4.x
 

Отправлено 07 Ноябрь 2016 - 21:28

Цитата

Ваша активная лицензия истекла, поэтому ips возвращает сообщение с ошибкой вместо кода.

По хорошему этот ответ следовало бы фильтровать на предмет неактивного лицензионного ключа. Всё-таки, из-за истечения срока активности ключа регистрация на форуме падать не должна (да и вообще, все значения, получаемые извне, должны проверяться/приводиться). В 4-ке, может, поправили...

P.S. Ну а STRICT_TRANS_TABLES отключать не очень хороший вариант.

Сообщение изменено: cyrax_02 (07 Ноябрь 2016 - 21:31)

0

#4 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 048
  • Регистрация: 20-Март 09
  • Репутация: 2 414
  • IPB version:3.1.x
 

Отправлено 07 Ноябрь 2016 - 21:50

Просмотреть сообщениеcyrax_02 сказал(а):

По хорошему этот ответ следовало бы фильтровать на предмет неактивного лицензионного ключа.

Это естественная защита от тех кто пользуется спам-сервисом без активной лицензии. А если серьезно то в 3.4.9 пофиксили.

Просмотреть сообщениеcyrax_02 сказал(а):

Ну а STRICT_TRANS_TABLES отключать не очень хороший вариант.

Не знаю какие сейчас требования, но в ранних версиях 3.x отключение STRICT_TRANS_TABLES было условием IPS. Но делать это вовсе не обязательно, достаточно принудительно интвалить ответ от спасм-сервиса в методе querySpamService.
0

#5 Пользователь не на сайте   corazon ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 14
  • Регистрация: 07-Январь 17
  • Репутация: 0
  • IPB version:3.4.x
 

Отправлено 07 Январь 2017 - 13:42

столкнулся с практически той же самой проблемой после переустановки винды! форум восстановить смог, но теперь после регистрации вылетает ошибка БД(((
 Error: 1366 - Incorrect integer value: 'Email address invalid' for column 'log_code' at row 1
 IP Address: 127.0.0.1 - /index.php?app=core&module=global&section=register
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 mySQL query error: INSERT INTO spam_service_log (`log_date`,`log_code`,`log_msg`,`email_address`,`ip_address`) VALUES(1483783305,'Email address invalid','','....@mail.ru','127.0.0.1')
 .--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
 | File                                                                       | Function                                                                      | Line No.          |
 |----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------|
 | G:\WebDesign\wamp64\www\portal2\admin\sources\base\ipsMember.php           | [db_main_mysql].insert                                                        | 4122              |
 '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
 | G:\WebDesign\wamp64\www\portal2\admin\applications\core\modules_public\global\register.php| [IPSMember].querySpamService                                                  | 1905              |
 '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
 | G:\WebDesign\wamp64\www\portal2\admin\applications\core\modules_public\global\register.php| [public_core_global_register].registerProcessForm                             | 65                |
 '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
 | G:\WebDesign\wamp64\www\portal2\admin\sources\base\ipsController.php       | [public_core_global_register].doExecute                                       | 306               |
 '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'

помогите пожалуйста исправить(
0

#6 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 048
  • Регистрация: 20-Март 09
  • Репутация: 2 414
  • IPB version:3.1.x
 

Отправлено 07 Январь 2017 - 14:26

Отключить спамсервис от IPS. Настройки -> Пользователи -> Защита от Спама -> Включить сервис? - Нет

Если все же у вас каким-то образом оказалась лицензия от IPS, и вы не обновились до последней версии но хотите использовать их спамсервис.
Открыть admin\sources\base\ipsMember.php
Найти

		$responseCode	= $response[0];
		$responseMsg	= $response[1];

Заменить на

		$responseCode = $query->http_status_code == 200 ? (int) $response : 0;
		$responseMsg = $query->http_status_code == 200 ? '' : $response;

0

#7 Пользователь не на сайте   corazon ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 14
  • Регистрация: 07-Январь 17
  • Репутация: 0
  • IPB version:3.4.x
 

Отправлено 07 Январь 2017 - 14:50

отключил защиту от спама, а так же на всякий случай хук капчи, при этом ошибка БД как вылетала так и вылетает и окно капчи на форуме при регистрации также осталось, хоть я хук отключил (хэш обновлял)!!! не знаю уже как эту беду решить(((
0

#8 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 048
  • Регистрация: 20-Март 09
  • Репутация: 2 414
  • IPB version:3.1.x
 

Отправлено 07 Январь 2017 - 15:05

Просмотреть сообщениеcorazon сказал(а):

хоть я хук отключил

Какой хук?.. Эта системная настройка. Еще раз проверьте внимательно.
Приведите лог, может быть там уже другая ошибка.
0

#9 Пользователь не на сайте   corazon ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 14
  • Регистрация: 07-Январь 17
  • Репутация: 0
  • IPB version:3.4.x
 

Отправлено 07 Январь 2017 - 15:08

я в курсе что эта системная настройка! ранее я капчу ставил поэтому и отключил ее вместе с защитой от спама
0

#10 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 048
  • Регистрация: 20-Март 09
  • Репутация: 2 414
  • IPB version:3.1.x
 

Отправлено 07 Январь 2017 - 15:10

corazon, какого хера вы отредактировали предыдущие сообщение когда на него уже был дан ответ?
0

#11 Пользователь не на сайте   corazon ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 14
  • Регистрация: 07-Январь 17
  • Репутация: 0
  • IPB version:3.4.x
 

Отправлено 07 Январь 2017 - 15:15

потому что забыл вставить ошибку из лога, епт и не видел после свое поста никакого ответа
0

#12 Пользователь не на сайте   corazon ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 14
  • Регистрация: 07-Январь 17
  • Репутация: 0
  • IPB version:3.4.x
 

Отправлено 07 Январь 2017 - 15:18

дубль два
 Date: Sat, 07 Jan 2017 12:05:29 +0000
 Error: 1364 - Field 'arcade_lastplay' doesn't have a default value
 IP Address: 127.0.0.1 - /index.php?app=core&module=global&section=register
 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 mySQL query error: INSERT INTO members (`name`,`members_display_name`,`email`,`member_group_id`,`joined`,`ip_address`,`time_offset`,`coppa_user`,`members_auto_dst`,`allow_admin_mails`,`language`,`members_l_username`,`members_created_remote`,`member_login_key`,`member_login_key_expire`,`view_sigs`,`bday_day`,`bday_month`,`bday_year`,`restrict_post`,`auto_track`,`msg_count_total`,`msg_count_new`,`msg_show_notification`,`last_visit`,`last_activity`,`member_uploader`,`members_pass_salt`,`members_pass_hash`,`members_l_display_name`,`fb_uid`,`vk_uid`,`fb_emailhash`,`members_seo_name`,`members_bitoptions`) VALUES('test','test','thor1985@mail.ru',1,1483790729,'127.0.0.1',4,0,1,1,1,'test',0,'73d3ade2aa5efdf88614144a26e78276',0,1,0,0,0,0,0,0,0,1,1483790729,1483790729,'flash','?=P!Q','87b6bde5446a341fa3a93ef95d1e6831','test',0,0,'','test',0)
 .--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
 | File                                                                       | Function                                                                      | Line No.          |
 |----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------|
 | G:\WebDesign\wamp64\www\portal2\admin\sources\base\ipsMember.php           | [db_main_mysql].insert                                                        | 662               |
 '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
 | G:\WebDesign\wamp64\www\portal2\admin\applications\core\modules_public\global\register.php| [IPSMember].create                                                            | 1942              |
 '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
 | G:\WebDesign\wamp64\www\portal2\admin\applications\core\modules_public\global\register.php| [public_core_global_register].registerProcessForm                             | 65                |
 '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
 | G:\WebDesign\wamp64\www\portal2\admin\sources\base\ipsController.php       | [public_core_global_register].doExecute                                       | 306               |
 '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'

0

#13 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 048
  • Регистрация: 20-Март 09
  • Репутация: 2 414
  • IPB version:3.1.x
 

Отправлено 07 Январь 2017 - 15:26

Это ошибка не имеет отношения к предыдущей spam_service_log.
Удалить приложение с "arcade" или выполнить sql запрос

ALTER TABLE members CHANGE COLUMN arcade_lastplay arcade_lastplay int(11) NOT NULL DEFAULT '0';

0

#14 Пользователь не на сайте   corazon ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 14
  • Регистрация: 07-Январь 17
  • Репутация: 0
  • IPB version:3.4.x
 

Отправлено 07 Январь 2017 - 15:37

заработало)) большущее спасибо за помощь, дай бог вам здоровья! с Рождеством))
0

#15 Пользователь не на сайте   corazon ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 14
  • Регистрация: 07-Январь 17
  • Репутация: 0
  • IPB version:3.4.x
 

Отправлено 07 Январь 2017 - 15:47

попробовал щас вернуть все обратно, капчу и защиту, регаюсь вылетает ошибка которую я скидывал выше! возвращаю все на исходную регистрация проходит без проблем! буду рыть дальше как можно вернуть капчу в рабочее состояние без ошибки бд
0

Сообщить об этой теме:


  • 2 Страниц +
  • 1
  • 2


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2017 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна