Insert su database MYSQL / PHP con HTTP_POST_VARS
Questo codice permette di realizzare dinamica una query di inserimento dati su database mysql.
Grazie all'utilizzo di $HTTP_POST_VARS recuperiamo tutti i valori passati via POST da un qualsiasi form e generiamo la query di inserimento utilizzano di nomi dei campi input come field name.
Molto utile se si aggiunge o rimuove un campo e per evitare debug della sintassi sql.
$postvars = $HTTP_POST_VARS;
$valori_disabilitati = array ("action", "id_key","table");
while(list($key,$value) = each($postvars))
{
if (!in_array($key,$valori_disabilitati))
{
if (strstr($key,"data#"))
{
$array_key=explode("#",$key);
$key=$array_key[1];
if ($value) $value = format_data_it2db($value);
}
$valore.= "'".addslashes($value)."',";
$field.= $key.",";
}
}
$sql = "INSERT INTO $table (".$field.") VALUES (".$valore.")";
$sql = str_replace(")",")",$sql);
if($ret=mysql_query($sql)) $id=mysql_insert_id();
