В файле процесса я делаю несколько запросов mysqli_query для загрузки нескольких наборов информации в базу данных (разные таблицы).Первый mysqli_query отправляет и работает отлично, но остальные не работают.Я не уверен, где есть ошибка в моем синтаксисе или больше проблемы с кодом PHP, так как я использую цикл для получения нескольких обновлений.В комментариях я добавил, для чего предназначен код, и если он работает или нет
//at the top declaring the sql queries
$sql_up_awarder = '';
$sql_up_history = '';
$sql_up_bike = '';
$sql_up_social = '';
$sql_up_compete = '';
//connect to server
require('conn.php');
//sqlprevent
require('sqlprevent');
//main table SQL statement that works
$sql_update = sprintf("UPDATE influencers SET inf_name = %s,inf_email = %s,inf_dob = %s,inf_mobile = %s,inf_location = %s WHERE inf_id = $vid;",
escapestring($vconncvnl, $vName, 'text'),
escapestring($vconncvnl, $vEmail, 'text'),
escapestring($vconncvnl, $vdob, 'text'),
escapestring($vconncvnl, $vphone, 'text'),
escapestring($vconncvnl, $vlocation, 'text')
);
$result_insert = mysqli_query($vconncvnl, $sql_update);
if ($vracehistory != '') {
for($i = 0; $i <count($history); $i++){
$historyid = $history[$i];
$valuehistory = $vracehistory[$i];
$valueresults = $results[$i];
$sql_up_history .= sprintf("UPDATE inf_race_history SET race_history =%s,results = %s WHERE inf_id = " . "'". $vid . "'" . " AND race_id = '$historyid';". "<br>", escapestring($vconncvnl, $valuehistory,'text'),escapestring($vconncvnl, $valueresults ,'text'));
}
} else{
$vracehistory = '';
}
$result_history = mysqli_query($vconncvnl, $sql_up_history);
, когда я повторяю $sql_up_history
, он дает мне
UPDATE inf_race_history SET race_history ='51',results = '61' WHERE inf_id = 2 AND race_id = 2;
UPDATE inf_race_history SET race_history ='71',results = '81' WHERE inf_id = 2 AND race_id = 3;
, который при вводе вPHPMyAdmin работает, а затем обновляет таблицы, как есть
, однако, когда я отображаю $results_history
, я ничего не получаю, когда пытаюсь использовать Mysqli_error($vconncvnl);
, чтобы посмотреть, что из этого получится
У вас ошибка в синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MariaDB, на предмет правильного синтаксиса, который можно использовать рядом с 'UPDATE inf_race_history SET race_history =' 71 ', results =' 81 'WHERE inf_id =' в строке 1
у меня естьпопытался изменить значения в операторе обновления так, чтобы его значения, такие как
Update 'inf_race_history'
, были в `marks, но это не имеет никакого значения
edit
по предложению Давида я удалил <br>
из части обновления, а затем mysqli_error () изменился на
В синтаксисе SQL возникла ошибка;проверьте руководство, соответствующее вашей версии сервера MariaDB, на предмет правильного синтаксиса для использования рядом с 'ОБНОВЛЕНИЕ inf_race_history SET race_history =' 71 ', результаты =' 81 'WHERE inf_id = 2 A' в строке 1