如果第一个查询插入了它的数据,我想插入第二个查询的数据


I want to insert the data of second query if first query have inserted its data

我正在尝试插入数据。但是我遇到了一个错误,我无法解决它,任何帮助将不胜感激

错误:警告:mysqli_num_rows() 预期参数 1 为 mysqli_result,给定布尔值

$insert_qryy = mysqli_query($con,"Insert into user_register(name,email,phone,cphone,address,city,country,dob)
values('".$name."','".$email."','".$phone."','".$cphone."','".$address."','".$cityr."','".$country."','".$dob."')")or die(mysqli_error());
if ($insert_qryy->num_rows==0)
{   
    echo "Error";
}
else
{      
    $handler = mysqli_query($con,"INSERT INTO `addproperty`(`purpose`, `property_type`, `city`, `title`, `description`,         
`property_price`, `land_area`, `expires_after`, `property_img`) VALUES('".$purpose."','".$type."','".$city."','".$title."','".$desc."','".$price."',
'".$landarea."','".$expiry."','".$im."')") or die (mysqli_error());
}

它正在输入 $insert_qryy 数据,但第二条语句不起作用 如果语句变得错误,我希望我能在这里得到我的解决方案

正如你所说 - No i want to insert the data of second query if first query have inserted its data .检查一次:-

$insert_qryy = mysqli_query($con,"Insert into user_register(name,email,phone,cphone,address,city,country,dob) values('".$name."','".$email."','".$phone."','".$cphone."','".$address."','".$cityr."','".$country."','".$dob."')")or die(mysqli_error($con));
if ($insert_qryy)
{   
  $handler = mysqli_query($con,"INSERT INTO `addproperty`( `purpose`, `property_type`, `city`, `title`, `description`,`property_price`, `land_area`, `expires_after`, `property_img`) VALUES  ('".$purpose."','".$type."','".$city."','".$title."','".$desc."','".$price."','".$landarea."','".$expiry."','".$im."')") or die (mysqli_error($con));
} else{
   echo "First Insert not executed properly";
}

注意:- 问题是Insert查询返回布尔值 true 或 false,具体取决于查询是否执行。所以你不能直接在mysqli_num_rows()中使用它,因为它要求一个result-set object作为参数而不是一个boolean值。

要检查INSERT查询状态,您可以使用 mysqli_affected_rows 或 mysqli_insert_id()。

$lastid = mysqli_insert_id($link);

修改后的示例:

$insert_qryy = mysqli_query($con,"Insert into user_register(name,email,phone,cphone,address,city,country,dob) 
values ('".$name."','".$email."','".$phone."','".$cphone."','".$address."','".$cityr. "','".$country."','".$dob."')") 
or die(mysqli_error()); 
$lastid = mysqli_insert_id($con);
if (intval($lastid) <= 0) 
{ 
    echo "Error"; 
}
else{
    // your second query or success.
}

使用mysqli_affected_rows () 函数检查数据是否成功插入表

$insert_qryy = mysqli_query($con,"Insert into user_register(name,email,phone,cphone,address,city,country,dob) values('".$name."','".$email."','".$phone."','".$cphone."','".$address."','".$cityr."','".$country."','".$dob."')")or die(mysqli_error($con));
if (mysqli_affected_rows() > 0) //use this to check if data is inserted successfully into table
{   
    $handler = mysqli_query($con,"INSERT INTO `addproperty`( `purpose`, `property_type`, `city`, `title`, `description`,`property_price`, `land_area`, `expires_after`, `property_img`) VALUES  ('".$purpose."','".$type."','".$city."','".$title."','".$desc."','".$price."','".$landarea."','".$expiry."','".$im."')") or die (mysqli_error($con));
} 
else
{
    echo "something went wrong!!! at first query insertion";
}