Мне нужна помощь в поиске моей ошибки по прилагаемому коду. Когда я запускаю любой из двух запросов, используя метод if ($conn->query($sql) === TRUE) {
, каждый работает правильно. Но когда я пытаюсь объединить их с методом if ($conn->multi_query($sql) === TRUE) {
. Записи не загружаются. Что я делаю неправильно здесь.У multi_query() есть ошибка
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "practice";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connection made...";
$payload_dump = $_POST['payload'];
echo $payload_dump;
$payload_array = json_decode($payload_dump,true);
if(is_array($payload_array)){
foreach($payload_array as $row){
//get the data_payload details
$device = $row['device'];
$type = $row['data_type'];
$zone = $row['zone'];
$sample = $row['sample'];
$count = $row['count'];
$time = $row['date_time'];
$epoch = $row['epoch_stamp'];
$sql = "INSERT INTO data(device, type, zone, sample, count, date_time, epoch_stamp) VALUES('$device', '$type', '$zone', '$sample', '$count', '$time', '$epoch');";
$sql . = "UPDATE data SET date_time = FROM_UNIXTIME(epoch_stamp);";
if ($conn->multi_query($sql) === TRUE) {
//if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
}
$conn->close();
?>
... и да, я понимаю, что этот код не является безопасным, но это нормально для моих целей тестирования.
что же '$ conn-> ошибка,' должен сказать? –
плюс, ваше обновление попытается обновить всю таблицу. Используйте предложение 'where'. –
Его вызывается из Arduino, и я не знаю, как отобразить сообщение об ошибке обратно в оболочку. Мои навыки кодирования довольно просты. – ghowe