Php #1064-您的SQL语法有错误;近'@gmail.com、ewefasd asdsd)和#x27;
我尝试使用php将数据插入mysql表,我尝试了很多次,但我不知道这里有什么问题。我尝试使用回声显示查询。它正在展示这个Php #1064-您的SQL语法有错误;近'@gmail.com、ewefasd asdsd)和#x27;,php,mysql,Php,Mysql,我尝试使用php将数据插入mysql表,我尝试了很多次,但我不知道这里有什么问题。我尝试使用回声显示查询。它正在展示这个 INSERT INTO `inquiry` (id,name,contact,email,query) values ('',vijay,15461485,asasf@gmail.com, ewefasd asdsd) 我的php查询是这样的 <?php include('config.php'); if (isset($_POST['submit'])) { $na
INSERT INTO `inquiry` (id,name,contact,email,query) values ('',vijay,15461485,asasf@gmail.com, ewefasd asdsd)
我的php查询是这样的
<?php
include('config.php');
if (isset($_POST['submit'])) {
$name=$_POST['userName'];
$mail=$_POST['userMail'];
$phone=$_POST['userPhone'];
$msg=$_POST['userMsg'];
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
test_input($name);
test_input($mail);
$query="INSERT INTO `inquiry` (id,name,contact,email,query) values ('',$name,$phone,$mail,$msg)";
$qur=mysql_query($query);
if ($qur) {
header('location:'. $_SERVER['HTTP_REFERER']);
}
else {
echo $query;
}
}
?>
这里有什么问题,我不知道,请帮助我。您必须在字符串值中加引号:
$query="INSERT INTO `inquiry` (id,name,contact,email,query) values ('','$name',$phone,'$mail','$msg')";
你需要在你的varcare领域进行大量的引用
$query="INSERT INTO `inquiry` (`id,`name`,`contact`,`email`,`query`) values ('','".$name."','".$phone."','".$mail."','".$msg."')";
停止使用myslq,因为不推荐使用mysqli或pDO
在将数据插入数据库之前使用
mysql\u real\u escape\u string()代码>要防止sql iJet更改此选项:
$query="INSERT INTO `inquiry` (id,name,contact,email,query) values ('',$name,$phone,$mail,$msg)";
$qur=mysql_query($query);
为此:
$query="INSERT INTO `inquiry` (id,name,contact,email,query) values ('','$name','$phone','$mail','$msg')";
$qur=mysql_query($query);
注意:不要忘记,您的代码易于SQL注入/XSS,请使用mysql\u real\u escape\u string()代码>。停止
使用不推荐使用的mysql函数并切换到mysqli甚至
更好的PDO
只需将这些变量$name、$phone、$mail、$msg
封装在引号中即可。在他的示例中,phone是一个数字,而不是字符串,我们也没有关于他数据库结构的信息
$query="INSERT INTO `inquiry` (id,name,contact,email,query) values ('','$name','$phone','$mail','$msg')";
$qur=mysql_query($query);