Ошибка при передачи значения Null MySql - Incorrect integer value: 'null' for column 'id'

165
04 октября 2021, 14:30

У меня есть php код для добавления группы:

DataManager::Insert ('groups', array('null',$_REQUEST['new_name'], $_REQUEST['phone']));

Я указываю имя, телефон. Id по умолчанию null.

Но при запросе получаю:

Incorrect integer value: 'null' for column 'id' at row 1
INSERT INTO groups VALUES("null", "mygroup", "333")

DataManager::Insert

static public function Insert($table, $values, $error_info=1)
    {
        $request = "INSERT INTO $table VALUES(";
        for ($n=0; $n<count($values); $n++)
        {
                    if (trim($values[$n])=="NOW()")
            $request.="NOW()";
                    else
            $request.="\"".addslashes($values[$n])."\"";
                    if ($n<count($values)-1)
                            $request.=", ";
        }
        $request .= ")";
        if ($error_info==1)
        {
            $res = mysql_query($request);
            if ($res==false) die(mysql_error()."<p>$request</p>");      
        }
        else
        {
            try {$res = mysql_query($request);}
            catch (Exception $e){}
        }
Answer 1

Уберите одинарные кавычки:

DataManager::Insert ('groups', array(null,$_REQUEST['new_name'], $_REQUEST['phone']));
Answer 2

Ошибка исчезла когда я отключил строгий режим MySQL:

sql_mode=STRICT_TRANS_TABLES
READ ALSO
Анимация фигур Android

Анимация фигур Android

Необходимо отобразить анимацию фигур, находящихся на View

98
java.lang.StringIndexOutOfBoundsException: String index out of range: -4

java.lang.StringIndexOutOfBoundsException: String index out of range: -4

Всем привет сложилась ситуация что получил я следующий exception:

325