Salve a tutti
ho una form composta da una data di nascita presa da un menu di selezione contenente anno, mese e giorno. Al momento dell'operazione di INSERT nel database, effettuo il binding usando la classe PDO, ma la data che mi restituisce è 0000-00-00 (il problema è nella conversione o nel binding stesso). Da notare che il campo data_nascita esiste solo nel db, nella form non esiste ma è l'insieme dei tre valori anno, mese e giorno.
Credo che il problema sia dovuto ad una specie di asincronia tra l'invio di dati con POST e il binding... come se il binding avvenisse per ultimo quando già i valori di POST sono stati azzerati.... come potrei risolvere?
Un sentito grazie a chi mi risponderà.
codice:try { $sql = 'INSERT INTO utenti (nome, cognome, data_nascita) VALUES (:name, :surname, :birthdate)'; $stmt = $db_ref->prepare($sql); $stmt -> bindParam(':name', $_POST['name']); $stmt -> bindParam(':surname', $_POST['surname']); $stmt -> bindParam(':birthdate', sprintf("%04d-%02d-%02d", $_POST['year'], $_POST['month'], $_POST['day'])); $stmt -> execute(); }


Rispondi quotando
