我很难过。我正在做一个简单的ajax表单,用户将输入数据并将数据发送到服务器。
我有以下代码:
<?php
require("/mnt/library/configdb.php");
require("/mnt/library/accessdb.php");
db_config_utility();
db_connect();
//Assign passed parameters
$submitDate = $_POST['submitDate'];
$mname = $_POST['mname'];
$mid = $_POST['mid'];
$coffice = $_POST['coffice'];
$street = $_POST['street'];
$city = $_POST['city'];
$state = $_POST['state'];
$zipcode = $_POST['zipcode'];
$lat = $_POST['lat'];
$lng = $_POST['lng'];
//Setting up sql call
$sql="INSERT INTO manholes(
submit_date,
manhole_name,
manhole_id,
central_office,
street,
city,
state,
zipcode,
latitude,
longitude
)
VALUES (
'$submitDate',
'$mname',
'$mid',
'$coffice',
'$street',
'$city',
'$state',
'$zipcode',
'$lat',
'$lng'
)";
echo("SQL: " . $sql);
//Making sql calls
mysql_query($sql);
?>
当回显正确打印出来时,数据正确到达服务器。服务器发回代码200
但不将数据放入数据库。它还会导致我的ajax帖子落入错误函数“SyntaxError: Unexpected token S
”。
如果删除回声,则抛出的错误为“SyntaxError: Unexpected end of input
”
有关如何找到导致问题的原因的任何建议?
答案 0 :(得分:6)
unexpected token S
可能是因为你是echo
文本,而你的ajax并不期待作为回复。删除它会导致另一个错误,因为那时你没有发送任何东西。您应该检查您的ajax函数期望接收的内容(JSON?),并在运行查询后回显正确的响应,以便您的ajax知道它是成功的。