как мне решить эту ошибку & quot; Исправляемая фатальная ошибка: объект класса mysqli_result не может быть преобразован в строку & quot ;?

$sql = "INSERT INTO placed_req(username,goodsauto,minitruck,largetruck,price,qty) VALUES('$user_check','$ga','$mt','$lt','$r','$qty')";
$result = mysqli_query($con,$sql);
$sql2="SELECT reqid FROM placed_req WHERE username='$user_check' AND price='$r'";
$ret=mysqli_query($con,$sql2);
$sql1 = "INSERT INTO inv_detail (inv_id,p_name,qty,price) VALUES('$ret','$user_check','$qty','$r')"; //i'm getting that error in this line
$result1 = mysqli_query($con,$sql1);
if(isset($result1))
echo "<br></br> Invoice generated successfully";
header("refresh:10,url=placeorders.php");
} else {
echo "<br></br> values not selected";
}

0

Решение

если вы хотите поместить req_id в запрос вставки, вы должны правильно получить req_id

$sql2="SELECT reqid FROM placed_req WHERE username='$user_check' AND price='$r'";

$ret=mysqli_query($con,$sql2);

$row = mysqli_fetch_assoc($ret);
/* above instruction fetch record from database*/

$inv_id = $row['reqid'];

а затем положить $inv_id в оператор запроса вставки

$sql1 = "INSERT INTO inv_detail (inv_id,p_name,qty,price) VALUES('$inv_id','$user_check','$qty','$r')"; //i'm getting that error in this line
$result1 = mysqli_query($con,$sql1);
1

Другие решения

Если вы исправите свой запрос от

"SELECT reqid FROM placed_req WHERE username='$user_check' AND price='$r'";

Для того, чтобы:

"SELECT reqid FROM placed_req WHERE username=\'" . $user_check . "\' AND price=\'" . $r . "\'";

А также

$sql1 = "INSERT INTO inv_detail (inv_id,p_name,qty,price) VALUES('$ret','$user_check','$qty','$r')";

с $sql1 = "INSERT INTO inv_detail (inv_id,p_name,qty,price) VALUES(\'" . $ret . "\',\'" . $user_check . "\',\'". $qty . "\',\'" . $r . "\')";

Вы можете окончательно использовать значение переменных в вашем запросе. и, как сказал @pritamakumar, вы должны получить ret правильно

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector