0
Zuerst wählen Sie Abfrage aus, wenn id
gerade Menge sonst insert(id, quantity)
Abfrage in meinem Fall ausführen aktualisieren existiert nur Abfragephp gU mehrere Abfrage in Schleife
$fodid = $data->orfid;
$quantity = $data->orqnt;
include('db.php');
try{
$sqlchk="SELECT `orfoodid` AS FROM `orders` where `orfoodid`=':chkfoodid';";
$sqlupdate="UPDATE `resturant`.`orders` SET `orfoodqnt` = ':chcount' WHERE `orders`.`orfoodid` = ':chfodid';";
$sql="INSERT INTO `resturant`.`orders` (`orfoodid`, `orfoodqnt`) VALUES (:foodid,:count);";
for($i=0;$i<sizeof($fodid);$i++){
$rs = $conn->prepare($sqlchk);
$rs->execute(array(':chkfoodid'=>$fodid[$i]));
$result=$rs->fetch(PDO::FETCH_ASSOC);
if(!$result)
{
$rs = $conn->prepare($sqlupdate);
$rs->execute(array(':chfodid'=>$fodid[$i],
':chcount'=>$quantity[$i]));
echo 'Order updated';
} else {
$rs = $conn->prepare($sql);
$rs->execute(array(':foodid'=>$fodid[$i],
':count'=>$quantity[$i]));
echo 'Order Saved';
}
}
$conn=null;
}catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
Nur eine Anmerkung: Eine Aussage muss nur einmal vorbereitet werden. Also bereite dich vor und gib alle Namen und einen lesbaren Namen wie '$ selectStmt' an. – JustOnUnderMillions
Und wo ist deine konkrete Frage? – JustOnUnderMillions
ein anderer Hinweis, verwenden Sie stattdessen die Anweisung ['in doppelte Aktualisierung einfügen '] (https://dev.mysql.com/doc/refman/5.7/en/insert-on-duplicate.html) statt – hassan