我使用php从iphone获取数据,但是当我在表中插入后期数据时,它会给出错误
mysql_select_db("emriphone", $con);
$providernpi=$_POST['ProviderNPI'];
$patienid=$_POST['PatientID'];
$fileurl=$_POST['FileURL'];
$filetype=$_POST['FileTYPE'];
$datasynid=$_POST['DataSynID'];
$query = "INSERT into AppointmentDataSync (ProviderNPI,PatientID,FileURL,FileType,DataSyncID) VALUES('$providernpi','$patientid','$fileurl','$filetype','$datasynid')"
$con = mysql_query($query,$con);
$cnt = mysql_num_rows($con);
echo($providernpi)
?>
答案 0 :(得分:0)
我认为您的查询语句将是这样的
$query = "INSERT into AppointmentDataSync (ProviderNPI,PatientID,FileURL,FileType,DataSyncID) VALUES('".$providernpi."','".$patientid."','".$fileurl."','".$filetype."','".$datasynid."')";
修改
mysql_query($query);
printf("Records inserted: %d\n", mysql_affected_rows());
答案 1 :(得分:0)
您缺少一些分号,例如在$query = ...
和echo(...)
语句之后。语法错误总是意味着您编写代码的方式有问题,而不是代码的功能。只要仔细查看错误消息中给出的行号周围的区域,就可以解决大部分问题。
至于你的另一个问题:mysql_num_rows()
抱怨其参数不是资源意味着你的查询出错了。您应该检查查询是否已成功执行($con
将评估为true
然后),如果没有,请检查mysql_error()
以获取错误消息。
顺便说一句,您的代码对SQL injection是敞开的。攻击者可以在POST参数中插入一些意外的东西,整个数据库将在几秒钟内泄露或操纵。