Perché per le date non usi un semplice input con l'attributo del type="date"? E sul database invece di usare il varchar, provate a usare qualcosa che è fatto per impostare le date come e il: datetime
Printable View
Perché per le date non usi un semplice input con l'attributo del type="date"? E sul database invece di usare il varchar, provate a usare qualcosa che è fatto per impostare le date come e il: datetime
Mi piaceva l'idea delle tre select in fin dei conti quasi ogni form d'iscrizione ormai è strutturato così
Ciao mZanella,
Domani posto il listato completo e corretto.
Ti piacerebbe vedere i mesi con i nomi? Vedere scritta la prima chiave dell'array dei mesi non molto bello
Es: array("Gennaio","Febbraio"...)
No quello no. Preferisco i numeri a posto del nome de mesi.
Mostra la query dell'inserimento, e controlla la correttezza del valore che passi come data.Citazione:
Ho fatto una prova, mi memorizza ora tutto correttamente, ma non mi memorizza la data come mai ?????
Probabilmente stai passando per sbaglio una variabile non inizializzata che quindi ha valore null, o qualcosa di analogo.
Non è ancora supportato da Firefox: http://www.w3schools.com/htmL/html_form_input_types.asp (purtroppo!).Citazione:
Perché per le date non usi un semplice input con l'attributo del type="date"?
datetime è per data e ora, per le date meglio date.Citazione:
E sul database invece di usare il varchar, provate a usare qualcosa che è fatto per impostare le date come e il: datetime
Magari sapeva l'ora di nascita hahaha (scherzo, era un solo un esempio)
Salve a tutti,
Visto che a me sembra che non ci sia niente di irregolare passo a postare l'intero listato anzicchè solo pezzettini. L'unica cosa che non mi piace molto è la targhetta "Seleziona data (gg/mm/yyyy) io credo che sia la il problema. Mi spiego è una semplice scrita in html come se mettessi "ciao mondo" e quindi la scritta non ha il suo id. Potrete constatare meglio con i vostri occhi. E poi come se dice ???? 4 occhi vedono meglio di due no.
Qualsiasi correzione è ben accetta. Grazie a tutti della collaborazione.Codice PHP:<form method="POST" autocomplete ="off" action="<?php $_SERVER['PHP_SELF'] ?>">
<p> <p> <p>
<label for =campo-cognome"> Cognome: </label> <input type ="text" name = "cognome" required />
</p> </p> </p>
<p> <p><label for =campo-nome"> Nome: </label> <input type ="text" name = "nome" required/> </p></p>
Selezionare la data di nascita:
<?php
// formazione dei tre select:
// giorno
echo '<label for="giorno"></option><select name="giorno" required>';
$option = "<option value=\"0\">Scegli il giorno:</option> \n";
for ( $i = 1; $i <= 31; $i++ ) $option .= "<option value=\"$i\">$i</option>\n";
echo $option . "</select>\n";
unset( $option );
// mese
$mese = array( '','01','02','03','04','05','06','07','08','09','10','11','12' );
echo '<label for="mese"> </option><select name="mese">';
$option = "<option value=\"0\">Scegli il mese: <p></option> \n";
for ( $i = 1; $i <= 12; $i++ ) $option .= "<option value=\"$i\">{$mese[$i]}</option>\n";
echo $option . "</select>\n";
unset( $option );
// anno
echo '<label for="anno"> </option><select name="anno">';
$option = "<option value=\"0\">Scegli l'anno</option>\n";
for ( $i = date( 'Y' ); $i > 1900; $i-- ) $option .= "<option value=\"$i\">$i</option>\n";
echo $option . "</select>\n";
unset( $option );
if (!checkdate($input['mese'], $input['giorno'], $input['anno'])) {
$errore = "Data non valida";
}
?>
<p> <p><label for =campo-username"> Username: </label> <input type ="text" name = "username" required/> </p></p>
<p> <p><label for =campo-email"> E-Mail: </label> <input type ="email" name = "email" required/> </p></p>
<p> <p><label for =campo-ripemail"> Ripeti-Email: </label> <input type ="email" name = "ripemail" required/> </p></p>
<p> <p><label for =campo-password"> Password: </label> <input type ="password" name = "password" required/> </p></p>
<p> <p><label for =campo-rippassword"> Ripeti-password: </label> <input type ="password" name = "rippassword" required/> </p></p>
<div align ="center">
<input type="submit" name="reg" value="Invio Iscrizione" />
</div>
</div>
</form>
</head>
<body>
<?php
require_once ("connettimysqli.php");
require_once ("data.php");
echo"</hr>";
if(!empty($_POST)){
# Inizializzazioni variabili
$id = mysqli_real_escape_string($con, $_POST['id']);
$cognome = mysqli_real_escape_string($con, $_POST['cognome']);
$nome = mysqli_real_escape_string($con, $_POST['nome']);
$nascita = mysqli_real_escape_string($con, $_POST['nascita']);
$nazionalita = mysqli_real_escape_string($con, $_POST['nazionalita']);
$citta = mysqli_real_escape_string($con, $_POST['citta']);
$prov = mysqli_real_escape_string($con, $_POST['prov']);
$username = mysqli_real_escape_string($con, $_POST['username']);
$email = mysqli_real_escape_string($con, $_POST['email']);
$ripemail = mysqli_real_escape_string($con, $_POST['ripemail']);
$password = mysqli_real_escape_string($con, $_POST['password']);
$rippassword = mysqli_real_escape_string($con, $_POST['rippassword']);
// formazione dei tre select:
echo '<div id ="messaggio">';
#Inizamo a controllare il carattere inserito per l'email che sia corretto
$query=("INSERT INTO utenti (cognome, nome, nascita, username, email, password) "
. "VALUES('$cognome','$nome','$nascita','$username','$email','$password')");
$result=mysqli_query($con,$query);
if($result){
echo("<p> Inserimento avvenuto correttamente <p>");
} else{
echo("Inserimento non eseguito. Errore: ".mysqli_error($con));
}
}
Questo è un problema:
Nel form non hai nessun campo nascita, quindi $_POST['nascita'] è indefinito e, alla fine della valutazione, $nascita vale null.Codice PHP:$nascita = mysqli_real_escape_string($con, $_POST['nascita']);
Probabilmente intendevi scrivere questo:
Codice PHP:$giorno = mysqli_real_escape_string($con, $_POST['giorno']);
$mese = mysqli_real_escape_string($con, $_POST['mese']);
$anno = mysqli_real_escape_string($con, $_POST['anno']);
$nascita = sprintf("%04d%02d%02d", $anno, $mese, $giorno);
presumo che si aper questo che non memorizza la data ???? In questa maniera dovrebbe andare giusto ???? E andato alla grande. Risolto il problema. Grazie. Ovviamente viene memorizzata in qyuesta maneira qua:
Poi bisognerà farla vedere nel formato italiano ma quello non dovrei avere grossi problemi. T'invito a leggere un'altro problemino che ho posto in un'altra discussione il link è il seguente:Citazione:
19720414
http://forum.it.altervista.org/php-m...-new-post.html
Magari riusciamo a risolverlo più semplicemnte. Grazie dell'aiuto qua si può chidere.
Fabio, ricordati di settare variabili che esistono nei form, se no, come ti ha detto mzanella: "settando una variabile che non esiste riceverai un valore nullo" il tuo programma in questo caso potrebbe non funzionare a dovere
difatti, il problema era proprio le variabili. E come le ha sistemate mzanella ha funzionato alla grande :P