首先抱歉,如果这是一个愚蠢的问题,这是我的第一个MySql项目。
我正在为一个活动编写一个非常基本的应用程序。这个想法是检查站工作人员输入一个团队编号和一个时间,然后进入数据库。我已经在WAMP中构建了一个基本脚本,现在我将它放在我的网络服务器上,我得到了这个错误
错误:您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在第1行“到达”VALUES('')('4568')附近使用正确的语法
这是我的脚本代码
<?php
$con=mysqli_connect("localhost","","","");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to Database, Contact Control: " . mysqli_connect_error();
}
// escape variables for security
$Team = mysqli_real_escape_string($con, $_POST['Team']);
$cp = mysqli_real_escape_string($con, $_POST['cp']);
$sql="INSERT INTO checkpoints (Number, CP2 Arrival)
VALUES ('$Number', '$cp')";
if (!mysqli_query($con,$sql)) {
die('Error: ' . mysqli_error($con));
}
echo "record added";
mysqli_close($con);
?>
我花了很多年时间用谷歌搜索并试图没有运气
任何想法?
提前致谢
答案 0 :(得分:0)
数据库项不应包含空格。使用这样的括号: 插入检查点([编号],[CP2到达]) VALUES('$ Number','$ cp');
答案 1 :(得分:0)
列名称不应包含空格。尝试将名称更改为CP2_Arrival
,并将查询调整为
$sql="INSERT INTO checkpoints (Number, CP2_Arrival)
VALUES ('$Number', '$cp')";
$Number
变量来自哪里?您的意思是使用$Team
吗?
答案 2 :(得分:0)
<?php
$con=mysqli_connect("localhost","","","");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to Database, Contact Control: " . mysqli_connect_error();
}
// escape variables for security
$Team = mysqli_real_escape_string($con, $_POST['Team']);
$cp = mysqli_real_escape_string($con, $_POST['cp']);
$sql="INSERT INTO checkpoints (Number, CP2_Arrival)
VALUES (
'".$Team."',
'".$cp."'
)";
if (!mysqli_query($con,$sql)) {
die('Error: ' . mysqli_error($con));
}
echo "record added";
mysqli_close($con);
?>
注意:不要在列名上使用空格,而是使用_而不是