Salve. Da un paio di giorni sto riscontrando un'"anomalia" che riguarda l'utilizzo della query INSERT INTO utilizzando MySQLi.
Seguendo la documentazione ufficiale di PHP ho strutturato il seguente codice:
Codice PHP:
$dbdata = array(
"host" => "... indirizzo ...",
"port" => "... porta ...",
"user" => "... username ...",
"password" => "... password ...",
"schema" => "... default schema ...",
"socket" => "",
);
$mysqli = new mysqli($dbdata["host"], $dbdata["user"], $dbdata["password"], $dbdata["schema"]);
if($result = $mysqli->query("INSERT INTO users (email, password, dateofbirth, dateofreg, userstate, usertoken) VALUES (
'".mysqli_real_escape_string($email)."',
'".mysqli_real_escape_string($password)."',
'".mysqli_real_escape_string($birth)."',
'".mysqli_real_escape_string($todaydate)."',
'".mysqli_real_escape_string($userstate)."',
'".mysqli_real_escape_string($usertoken)."')")) {
/* ... codice per informare che la query è avvenuta ... */
} else {
/* ... codice per informare che la query non è avvenuta ... */
}
La connessione con il database avviene con successo e la query esegue tutte le informazioni. Ma quando vado a controllare il database, utilizzando MySQL Workbench, trovo questa cosa insolita:

Com'è possibile che i campi sono vuoti? Ho anche dumpato (con var_dump()) le variabili in php e sono tutte ok, nessun errore. Ho anche provato a togliere mysqli_real_escape_string() ma il risultato ($result ) è NULL. Qualcuno potrebbe aiutarmi? Grazie.