在php中使用mysql\u查询保存数据的问题
我正在使用此php代码保存订单详细信息在php中使用mysql\u查询保存数据的问题,php,mysql,sql-insert,Php,Mysql,Sql Insert,我正在使用此php代码保存订单详细信息 public function saveShippingDetails($factoryid,$date,$noOfPlaces,$jsonStr){ $result = mysql_query("insert into shipping_details(FKFactoryID,shippingDate,NoOfPlaces) values('$factoryid','$date','$noOfPlaces')"); /
public function saveShippingDetails($factoryid,$date,$noOfPlaces,$jsonStr){
$result = mysql_query("insert into shipping_details(FKFactoryID,shippingDate,NoOfPlaces) values('$factoryid','$date','$noOfPlaces')");
//check for successful store
if($result){
//get shipping details
$detailsID = mysql_insert_id();//last inserted id
$result1 = mysql_query("select * from shipping_details where shippingDetailsID=$detailsID");
$count=0;
$arrjson = json_decode($jsonStr,true); //gets the parent json object
$length = sizeof($arrjson['places']);
for($i=0; $i<$length; $i++){
$city = $arrjson['places'][$i]['city'];
$longitude = $arrjson['places'][$i]['longitude'];
$latitude = $arrjson['places'][$i]['latitude'];
$result2 = mysql_query("insert into delivery_places(FKShippingDetailsID,city,longitude,latitude) values('$detailsID','$city','$longitude','$latitude')"); //line 1
if($result2){
++$count;
}
}
if($count==$length){
return mysql_fetch_array($result1);
}else{
return false;
}
}else{
return false;
}
}
public函数saveShippingDetails($factoryid、$date、$noOfPlaces、$jsonStr){
$result=mysql_查询(“插入到shipping_详细信息(FKFactoryID、shippingDate、NoOfPlaces)值(“$factoryid”、“$date”、“NoOfPlaces”)”);
//检查商店是否成功
如果($结果){
//获取装运详细信息
$detailsID=mysql\u insert\u id();//上次插入的id
$result1=mysql_查询(“从shippingDetailsID=$detailsID的shippingdetails中选择*);
$count=0;
$arrjson=json_decode($jsonStr,true);//获取父json对象
$length=sizeof($arrjson['places']);
对于($i=0;$i我建议您尝试使用mysql\u commit()
函数。可能数据已插入但未提交到数据库
或者在开始插入之前,设置以下条件:
mysqli_autocommit($con,TRUE);
如果没有错误,我只能认为数据没有被提交
我不熟悉PHP连接到mysql的语法,但是您不应该在mysql\u query()
函数中也提到连接变量吗?返回什么mysql\u error()
在这一行/查询之后?返回什么echo插入到…
?我没有得到任何错误。我得到了返回值。我也检查了sql语句,它也插入了值。因此查询也可以。当您将带有值的查询直接放入PMA、Adminer等时,数据保存到数据库中?是的,查询是正确的,我得到了正在为数组大小设置0值。不知道原因??嘿!$result1=mysql\u查询(“从ShippingDetails中选择*,其中shippingDetailsID=$detailsID”);在这一行中,您需要像其他php变量一样将$detailsID括在“”中。因此,请使用以下命令尝试您的函数:$result1=mysql_查询(“选择*from shipping_details,其中shippingDetailsID='$detailsID');