2016-06-02 2 views
0

Я использую функцию INSERT в PHP для вставки данных в таблицу. Вот код, указанный ниже: Обратите внимание, когда я выполнить код, я получаю ошибку:Ошибка PHP SQL для INSERT FUNCTION

Error: INSERT INTO tbl_test (name) VALUES​​ ('222') You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'VALUES​​ ('222')' at line 1

<?php 
    $servername = "localhost"; 
    $username = "root"; 
    $passwords = ""; 
    $dbname = "cmg_log"; 

    //open connection 
    $con = mysqli_connect ($servername, $username, $passwords, $dbname); 
    if (!$con){ 
     die("Connection fail. ".mysqli_connect_error()); 
    } 

    //insert into database 
    $query="INSERT INTO tbl_test (name) VALUES​​ ('222')"; 
    if (mysqli_query($con, $query)){ 
     echo "Successful"; 
    } 
    else{ 
     echo "Error: " .$query ."<br>" . mysqli_error($con); 
    } 
?> 
+0

Запрос выглядит нормально, попытаться удалить цитаты из значений? также поделиться, что такое тип поля? –

+0

Какую версию mysql вы используете? –

+0

Какая у вас ОС? – 1000111

ответ

0

Похоже чувствительно к регистру ошибки, просто используйте нижний регистр для values

$query="INSERT INTO tbl_test (name) values ('222')"; 

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

0

Обновить ваш запрос & попробовать это:

$query="INSERT INTO tbl_test (`name`) VALUES​​ ('222')"; 
-2

Или вы можете использование под запрос

$query="INSERT INTO tbl_test SET name='abc'"; 

Для запроса на обновление только вы заменить INSERT INTO с UPDATE

0

Попробуйте

$query =($con,"INSERT INTO table_name (name) 
     VALUES ('222')"); 
0
$var_data = '222'; 
$query = "INSERT INTO tbl_test (name) VALUES('$var_data')"; 
    if (mysqli_query($con, $query)) { 
     echo 'success'; exit(); 
    } else { 
     echo 'Connection Error'; exit(); 
    } 

В зависимости от конфигурации/mysql вам может потребоваться изменить «222» в var перед тем, как вставить его. Мой старый сервер сделал это со мной, и я до сих пор не знаю, почему. Это единственный раз, когда я видел это.

С уважением.

0

В вашем запросе есть несколько скрытых символов после ключевого слова VALUES. Причина, связанная с заменой на «нижний регистр», заключается в том, что вы удалили скрытые символы.

Вот что на самом деле в вашем коде, когда я вставлял в vim.
INSERT INTO tbl_test (name) VALUES<200b><200b> ('222')

Вы также можете увидеть скрытые символы, если вы используете браузер инспектировать инструмент, чтобы посмотреть на этот раздел кода на этой странице.