在PHP中从post中获取数据并插入到表中

在PHP中从post中获取数据并插入到表中,php,Php,我使用php从iphone获取数据,但当我在表中插入post数据时,它给出了错误 mysql_select_db("emriphone", $con); $providernpi=$_POST['ProviderNPI']; $patienid=$_POST['PatientID']; $fileurl=$_POST['FileURL']; $filetype=$_POST['FileTYPE']; $datasynid=$_POST['DataSynID'];

我使用php从iphone获取数据,但当我在表中插入post数据时,它给出了错误

   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)
  ?>

我想你的查询语句会是这样的

$query = "INSERT into AppointmentDataSync      (ProviderNPI,PatientID,FileURL,FileType,DataSyncID) VALUES('".$providernpi."','".$patientid."','".$fileurl."','".$filetype."','".$datasynid."')";
编辑


您缺少一些分号,例如$query=。。。和回声。。。声明。语法错误总是意味着代码的编写方式有问题,而不是代码的功能有问题。只要仔细查看错误消息中给出的行号周围的区域,就可以解决大多数问题

至于您的另一个问题:mysql_num_行抱怨它的参数不是资源,这意味着您的查询出错了。您应该检查查询是否成功执行$con将计算为true,如果不是,请检查mysql\u error以获取错误消息


顺便说一句,您的代码对您的用户非常开放。攻击者可能会在POST参数中插入一些意外内容,您的整个数据库将在几秒钟内泄漏或被操纵。

这会产生什么错误?请尝试使用isset检查POST参数,或者如果.syntax error,/home/content/i/h/u/ihus235/html/cs/emrapp/i中意外的T_变量必须加入语音:什么错误??关于如何构建查询:这不是一个好主意,它容易使用sql注入!我在datasynid=$\u POST['datasynid'];中看不到$;;良好的代码格式也可能有助于更轻松地阅读代码,从而更轻松地识别问题,一目了然……我已经这样做了,但现在给出了另一个错误mysql_num_rows:提供的参数不是amysql_num_rows命令仅对返回实际结果集的SELECT或SHOW等语句有效。要检索受INSERT、UPDATE、REPLACE或DELETE查询影响的行数,请使用mysql\u受影响的行。请查看我是否给出了mysql\u受影响的\u行:提供的参数不是有效的mysql链接,然后它又给出了此错误againit shows now record inserted One感谢它对我有效问题是它为提供者npi和患者id获取了0值,而不是真正的idare@Jusnit正如他所说的那样,插入查询会显示mysql\u num\u行提供的参数为invalid@user1285130看到我更新的答案,你应该添加一些错误处理代码。此外,Jusnit对mysql受影响的行的描述是正确的,尽管您可能根本不需要它,只需检查查询是否成功。@另一个代码我的代码工作正常,但它在patiendid和提供程序npi id中插入了o
mysql_query($query);
printf("Records inserted: %d\n", mysql_affected_rows());