Bugs and Suggestions

Here you can vote for ideas by projects. You can add your ideas to any open project from the project's page.

Спасибо!

Мы очень рады, что Вам нравится данный проект и вы проголосовали за его развитие.

Работа над задачами по проекту отнимает у его разработчика самое ценное — время, так что небольшая компенсация в виде материальной поддержки поднимет интерес к разработке и позволит сделать больше задач для общей пользы :)

Перейти к проекту Нет, спасибо

<<< Back

Неверные данные в полях при записи в базу данных

Added by: 2019-08-23 13:14:28 kvazimoda / Status: Done / Project: Модуль "Telegram"

При работе с базой данных MariaDB 10.3.10 при добавлении новых пользователей во время записи в базу данных возникают ошибки связанные с передачей пустых значений в поля типа "int(1)". Речь идёт о полях связанных с галочками "Администратор", "История", "Команды", "Шаблоны" и т.д. Иначе говоря, проблема касается всех галочек в разделе создания и редактирования пользователя. Если галочка не стоит, то в базу данных передаётся пустое значение. Выше указанная база данных считает это ошибкой. Для себя я решил эту проблему путём добавления в файл "user_edit.inc.php" проверки на пустые значения и замены этих пустых значений на ноль.
Т.е. участок:
if ($this->mode=='update') {
$ok=1;
if ($this->tab=='') {
if (!$rec['ID'])
{
global $user_id;
$rec['USER_ID']=$user_id;
}
global $name;
$rec['NAME']=$name;
global $admin;
$rec['ADMIN']=$admin;
global $history;
$rec['HISTORY']=$history;
global $history_level;
$rec['HISTORY_LEVEL']=$history_level;
global $cmd;
$rec['CMD']=$cmd;
global $patterns;
$rec['PATTERNS']=$patterns;
global $download;
$rec['DOWNLOAD']=$download;
global $play;
$rec['PLAY']=$play;
global $select_member;
$rec['MEMBER_ID']=$select_member;

Стал выглядеть вот так:
if ($this->mode=='update') {
$ok=1;
if ($this->tab=='') {
if (!$rec['ID'])
{
global $user_id;
$rec['USER_ID']=$user_id;
}
global $name;
$rec['NAME']=$name;
global $admin;
$rec['ADMIN']=$admin;
if($rec['ADMIN']!=1) $rec['ADMIN']=0;
global $history;
$rec['HISTORY']=$history;
if($rec['HISTORY']!=1) $rec['HISTORY']=0;
global $history_level;
$rec['HISTORY_LEVEL']=$history_level;
if($rec['HISTORY_LEVEL']=='') $rec['HISTORY_LEVEL']=0;
global $cmd;
$rec['CMD']=$cmd;
if($rec['CMD']!=1) $rec['CMD']=0;
global $patterns;
$rec['PATTERNS']=$patterns;
if($rec['PATTERNS']!=1) $rec['PATTERNS']=0;
global $download;
$rec['DOWNLOAD']=$download;
if($rec['DOWNLOAD']!=1) $rec['DOWNLOAD']=0;
global $play;
$rec['PLAY']=$play;
if($rec['PLAY']!=1) $rec['PLAY']=0;
global $select_member;
$rec['MEMBER_ID']=$select_member;

+1
 
Discuss (0)