Я переключился на PDO, и у меня возникли проблемы с созданием и выполнением SQL-запроса, который будет вставлять несколько строк только с одним выполнением.
Содержимое $data
после json_decode:
Array ( [action] => load [app] => CA [street_type] => AVE [place_type] => -- [state] => AL )
Код:
$data = json_decode(file_get_contents("php://input")); $query = "REPLACE INTO tblsettings(setApp, setIP, setKey, setValue)VALUES"; $qPart = array_fill(0, count($data), "(?, ?, ?, ?)"); $query .= implode(",", $qPart); $stmt = $db->prepare($query); foreach($data as $key => $val){ $query = "REPLACE INTO tblsettings(setApp, setIP, setKey, setValue)VALUES"; $qPart = array_fill(0, count($data), "(?, ?, ?, ?)"); $query .= implode(",", $qPart); $stmt = $db->prepare($query); $i = 1; if(!is_array($val)){ $stmt->bindParam($i++, $data->app); $stmt->bindParam($i++, gethostbyname(trim(gethostname()))); $stmt->bindParam($i++, $key); $stmt->bindParam($i++, $val); } if ($stmt->execute()){ echo "Success"; }else{ echo $stmt->errorCode(); } }