我正在b4a中编写一个android应用,并通过php文件连接到我的网络服务器。在我更改了Web主机之前,该应用程序正常运行,而当我运行sql命令时,我的代码中出现了此错误。电话号码,代码,时间和日期为varchar。我什至测试了int但没有运气。
插入
TempCodes
(ID
,PhoneNumber
,Code
,Time
,Date
值(空,\'9219142132 \',\'835677 \',\'23:09:23 \',\' 2019/03/28 \')\ n您的SQL语法有误;查看手册 对应于您的MySQL服务器版本的正确语法, 在'\'9219142132 \',\'835677 \',\'23:09:23 \',\'附近使用2019/03/28 \')'在第1行
这是我的sql命令:
"INSERT INTO `TempCodes`(`ID`, `PhoneNumber`, `Code`, `Time`, `Date`) VALUES (Null, '" & txtPhoneNumber.Text & "', '" & TempCode & "', '" & xTime & "', '" & xDate & "')"
我还从变量中删除了“`”,仍然什么也没有!
$databasehost = "host";
$databasename = "databse";
$databaseusername ="user";
$databasepassword = "pass";
$con = mysqli_connect($databasehost,$databaseusername,$databasepassword, $databasename);// or die(mysqli_error($con));
error_reporting(0);
mysqli_set_charset ($con , "utf8");
//$query = file_get_contents("php://input");
// $query = $mcrypt->decrypt($query);
$sth = mysqli_query($con, $query);
//echo $query;
if (mysqli_errno($con)) {
header("HTTP/1.1 500 Internal Server Error");
echo $query.'\n';
echo mysqli_error($con);
}
else
{
$rows = array();
while($r = mysqli_fetch_assoc($sth)) {
$rows[] = $r;
}
$res = json_encode($rows);
echo $res;
mysqli_free_result($sth);
}
mysqli_close($con);
这是我使用的php代码
我在这里遇到了大麻烦,请帮忙!!!!
答案 0 :(得分:0)
您试图在ID字段上插入一个NULL值。 假设TempCodes的表具有ID字段AUTO_INCREMENT,因此该句子应如下所示:
"INSERT INTO `TempCodes`(`PhoneNumber`, `Code`, `Time`, `Date`) VALUES ('"
& txtPhoneNumber.Text & "', '" & TempCode & "', '" & xTime & "', '" & xDate & "')"