Escape campi form recuperati tramite POST

Ciao,
in effetti mi stai suggerendo di trasformare la query in questo modo ?

PHP:
$sql = "UPDATE Commesse SET veicolo =  ('$veicolo'), targa =  ('$targa'), km =  ('$km'), telaio =  ('$telaio'), cliente =  ('$cliente'), indirizzo =  ('$indirizzo'), piva = ('$piva'), tel = ('$tel'), itr1 =  ('$itr1'), itr2 =  ('$itr2'), itr3 =  ('$itr3'), itr4 =  ('$itr4'), itr5 =  ('$itr5'), itr6 =  ('$itr6'), itr7 =  ('$itr7'), itr8 =  ('$itr8'), itr9 =  ('$itr9'), itr10 =  ('$itr10'), itr11 =  ('$itr11'), itr12 =  ('$itr12'), itr13 =  ('$itr13'), itr14 =  ('$itr14'), itr15 =  ('$itr15'), for1 =  ('$for1'), for2 =  ('$for2'), for3 =  ('$for3'), for4 =  ('$for4'), for5 =  ('$for5'), for6 =  ('$for6'), for7 =  ('$for7'), for8 =  ('$for8'), for9 =  ('$for9'), for10 =  ('$for10'), for11 =  ('$for11'), for12 =  ('$for12'), for13 =  ('$for13'), for14 =  ('$for14'), for15 =  ('$for15'), imp_1 = $imp_1, imp_2 = $imp_2, imp_3 = $imp_3, imp_4 = $imp_4, imp_5 = $imp_5, imp_6 = $imp_6, imp_7 = $imp_7, imp_8 = $imp_8, imp_9 = $imp_9, imp_10 = $imp_10, imp_11 = $imp_11, imp_12 = $imp_12, imp_13 = $imp_13, imp_14 = $imp_14, imp_15 = $imp_15, totale = $totale, n_tecnico =  ('$n_tecnico'), data = STR_TO_DATE('$data', '%d/%m/%Y') WHERE id = '".$_SESSION[id]."'";

e subito dopo ...

PHP:
foreach ($_POST as $key => $value) { 
    $_POST[$key] = addslashes($value); 
}

inserire questo ?

PHP:
<?php 
foreach ($_POST as $key => $value) { 
    $_POST[$key] = strtoupper(addslashes($value)); 
} 
?>
 
ciao
circa, devi usare il foreach un sola volta e prima della query
PHP:
<?php
//...........
foreach ($_POST as $key => $value) { 
    $_POST[$key] = strtoupper(addslashes($value)); 
}
//togli tutte quelle parentesi inutili
$sql = "UPDATE Commesse SET veicolo = '$veicolo', targa =  '$targa', ... ecc... WHERE id = '".$_SESSION[id]."'";
//...
?>
verifica gli apici, ricorda che gli apici non ci vogliono solo se il campo è numerico
esempio:
PHP:
<?php
$a="aaaa";
$b=77;
$sql= UPDADE tabella SET campo_stringa='$a', campo_numero=$b ...ecc.....";//uguale per l'insert
?>
poi abbandona le vecchie istruzioni php mysql (deprecate e in via di estinzione) e passa alle mysqli
 

Discussioni simili