2017-02-06 5 views
-1
<?php 
$con=mysql_connect('localhost', ' ', ' ') ; 
$db=mysql_select_db(' ') ; 
$name=$_POST['name']; 
$email=$_POST['email']; 
$mobile=$_POST'mobile']; 
if ($conn->connect_error) { 
die("Connection failed: " . $conn->connect_error); 
} 
$sql = "INSERT INTO user (name, email, mobile) 
VALUES ('$name', '$email', '$mobile')"; 
if ($con->query($sql) === TRUE) 
{ 
echo "New record created successfully"; 
} 
else{ 
    echo "Error: " . $sql . "<br>" . $con->error; 
} 
$con->close(); 
?>` 

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

моя ошибка:

syntax error, unexpected ''mobile'' (T_CONSTANT_ENCAPSED_STRING) 
+0

, что это ошибка? ans также показывают структуру таблицы –

+0

обновлена ​​моя ошибка. – charan

+0

'$ mobile = $ _ POST'mobile '];' здесь вы отсутствуете '['. – DD77

ответ

1

Это suppposed комментарием, но у меня есть низкая репутация здесь.

Прежде чем ответить на ваш вопрос, пожалуйста, не используйте функции mysql, так как его больше не поддерживают. Рассмотрим переход на MYSQLI или PDO. Кроме того, не доверяйте пользовательскому вводу. Смысл не напрямую отправлять значения полей из вашей формы в вашу базу данных, так как attcker может легко использовать ее, добавляя забавные javascripts или хуже. Это не будет работать, потому что вы забыли открыть квадратные скобки,

$ mobile = $ _POST ['mobile'];

На ваш вопрос, попробуйте следующее:

$sql = "INSERT INTO user (`name`, `email`, `mobile`)VALUES 
('".mysqli_real_escape_string($con,$_POST['name'])."', 
'".mysqli_real_escape_string($con,$_POST['email'])."', 
'".mysqli_real_escape_string($con,$_POST['mobile'])."')"; 

, где переменная $ сопп является подключение к базе данных

Смежные вопросы