Ошибка вставки PHP 1064
Я постоянно получаю сообщение об ошибке на своей странице php. Когда я отправляю форму, она говорит, что у меня нет разрешения на просмотр страницы php, а когда я помещаю ее в тест SQL-запроса, она говорит, что это ошибка #1064. Я продолжаю получать это сообщение об ошибке, и я понятия не имею, почему. В тесте запроса я помещаю информацию только между ними. Может кто-нибудь, пожалуйста, помогите исправить это?
<html>
<head>
<meta charset="utf-8">
<title>Enquiry</title>
</head>
<body>
<?php
$name=$_POST['name'];
$email=$_POST['email'];
$phone = $_POST['phone'];
$radio = $_POST['radio'];
$enquiry = $_POST['enquiry'];
$user="root";
$password="";
$database="test";
mysql_connect('localhost',$user,$password) or die("Unable to connect to server");
mysql_select_db($database) or die("Unable to select database");
$query = "INSERT INTO Enquiry VALUES ('','$name','$email','$phone','$radio','$enquiry')";
mysql_query($query);
mysql_close();
?>
</body>
</html>
2 ответа
Решение
<?php
$con= mysql_connect("localhost","root","") or die('Unable to connect to server:'mysql_error());
mysql_select_db("test",$con);
if(isset($_POST['submit']))
{
$name=test_input($_POST['name']);
$email=test_input($_POST['email']);
$phone = test_input($_POST['phone']);
$radio = test_input($_POST['radio']);
$enquiry = test_input($_POST['enquiry']);
$sql = "
"INSERT INTO `Enquiry`"." (
name,
email,
phone,
radio,
enquiry
)". "VALUES". "(
"$name",
"$email",
"$phone",
"$radio",
"$enquiry"
)
";
$res=mysql_query($sql);
if(!$res){
die('Could not enter data: ' . mysql_error());
}
echo 'your successfull msg goes here';
function test_input($data)
{
$data = trim($data);
$data = stripslashes($data);
$data = mysql_real_escape_string($data);
return $data;
}
?>
предполагая, что primaryid - это автоинкремент, как сказано. попробуйте этот блок кода
Предполагая, что ваш первый столбец в базе данных является вашим первичным ключом, который автоматически увеличивается, вам нужно изменить ваш SQL на этот:
$sql = "
INSERT INTO Enquiry (
name,
email,
phone,
radio,
enquiry
) VALUES (
'$name',
'$email',
'$phone',
'$radio',
'$enquiry'
)
";