Я пытаюсь обновить данные в БД, используя этот код:
<?php
error_reporting(E_ALL | E_STRICT | E_NOTICE);
ini_set('display_errors', 1);
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
require("../db_connect.php");
if ($_GET['action'] == 'insert')
{
$query = "INSERT INTO tblfatture_2019 (id_booking, IdPaese, IdCodice, CodiceFiscale, Denominazione, Cognome, Nome, Indirizzo, NumeroCivico, CAP, Comune, Provincia, Nazione, payment_method, date_fattura, pre_paid, CodiceDestinatario, PECDestinatario) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$stmt = mysqli_prepare($con, $query);
$var1 = $_GET['id_booking'];
$var2 = $_GET['IdPaese'];
$var3 = $_GET['IdCodice'];
$var4 = $_GET['CodiceFiscale'];
$var5 = $_GET['Denominazione'];
$var6 = $_GET['Cognome'];
$var7 = $_GET['Nome'];
$var8 = $_GET['Indirizzo'];
$var9 = $_GET['NumeroCivico'];
$var10 = $_GET['CAP'];
$var11 = $_GET['Comune'];
$var12 = $_GET['Provincia'];
$var13 = $_GET['Nazione'];
$var14 = $_GET['payment_method'];
$var15 = $_GET['date_fattura'];
$var16 = $_GET['pre_paid'];
$var17 = $_GET['CodiceDestinatario'];
$var18 = $_GET['PECDestinatario'];
mysqli_stmt_bind_param($stmt,"issssssssssssssdss", $var1, $var2, $var3, $var4, $var5, $var6, $var7, $var8, $var9, $var10, $var11, $var12, $var13, $var14, $var15, $var16, $var17, $var18);
mysqli_stmt_execute($stmt);
mysqli_stmt_close($stmt);
}
else if ($_GET['action'] == 'delete')
{
$val1 = $_GET['id_fattura'];
$query = "DELETE FROM tblfatture_2019 WHERE id_fattura = ?";
$stmt = mysqli_prepare($con, $query);
mysqli_stmt_bind_param($stmt,"i", $val1);
mysqli_stmt_execute($stmt);
mysqli_stmt_close($stmt);
}
else
{
$query = "UPDATE tblfatture_2019 SET id_booking=?, IdPaese=?, IdCodice=?, CodiceFiscale=?, Denominazione=?, Cognome=?, Nome=?, Indirizzo=?, NumeroCivico=?, CAP=?, Comune=?, Provincia=?, Nazione=?, payment_method=?, date_fattura=?, pre_paid=?, CodiceDestinatario=?, PECDestinatario=? WHERE id_fattura=?";
$stmt = mysqli_prepare($con, $query);
$var1 = $_GET['id_booking'];
$var2 = $_GET['IdPaese'];
$var3 = $_GET['IdCodice'];
$var4 = $_GET['CodiceFiscale'];
$var5 = $_GET['Denominazione'];
$var6 = $_GET['Cognome'];
$var7 = $_GET['Nome'];
$var8 = $_GET['Indirizzo'];
$var9 = $_GET['NumeroCivico'];
$var10 = $_GET['CAP'];
$var11 = $_GET['Comune'];
$var12 = $_GET['Provincia'];
$var13 = $_GET['Nazione'];
$var14 = $_GET['payment_method'];
$var15 = $_GET['date_fattura'];
$var16 = $_GET['pre_paid'];
$var17 = $_GET['CodiceDestinatario'];
$var18 = $_GET['PECDestinatario'];
$val19 = $_GET['id_fattura'];
mysqli_stmt_bind_param($stmt,'issssssssssssssdssi', $var1, $var2, $var3, $var4, $var5, $var6, $var7, $var8, $var9, $var10, $var11, $var12, $var13, $var14, $var15, $var16, $var17, $var18, $var19);
mysqli_stmt_execute($stmt);
mysqli_stmt_affected_rows($stmt);
mysqli_stmt_close($stmt);
}
mysqli_close($con);
?>
, но я получаю ошибки, последняя из которых:
Я пытался отладитьв течение нескольких часов и не могу понять, почему запрос на обновление не работает, когда соответствующие операторы insert
и 'delete' работают как талисман, а также несколько других операторов update
, которые я использую.
Я уже пытался заключить имена таблиц и столбцов между знаками `и ', но это не помогло.
Заранее спасибо за помощь.