- Home
- Categorie
- Coding e Sistemistica
- PHP
- inserire da form
-
inserire da form
ho un form per inserire la data di nascita,
Data di nascita</td>
<td align="left">
<select size="1" name="anno">
<option value="0">anno</option>
<option value="2004">2004</option>
<option value="2003">2003</option>
<option value="2002">2002</option>
<option value="2001">2001</option>
<option value="2000">2000</option>.......
<select size="1" name="mese" >
<option value="0">mese</option>
<option value="01">1</option>
.........select size="1" name="giorno" >
<option value="0">giorno</option>
<option value="01">1</option>
<option value="02">2</option>
.........$sesso = $_POST['sesso'];
$data_di_nascita = $_POST['data_di_nascita'];
$razza = $_POST['razza'];
$etnia = $_POST['etnia'];faccio la query:
$query= "INSERT INTO registration (sesso,data_di_nascita,razza,etnia)";
$query.="VALUES('$sesso','$anno-$mese-$giorno','$razza','$etnia')";
$res_db=mysql_query($query)or die("Query non valida:".mysql_error());nel db ho il campo data_di_nascita tipo date ma non riesco ad inserirlo e mi dice questo:
Notice: Undefined index: data_di_nascita in c:\programmi\easyphp1-8\www\3_3.php on line 8
Notice: Undefined variable: anno in c:\programmi\easyphp1-8\www\3_3.php on line 28
Notice: Undefined variable: mese in c:\programmi\easyphp1-8\www\3_3.php on line 28
Notice: Undefined variable: giorno in c:\programmi\easyphp1-8\www\3_3.php on line 28
-
Dunque...credo che tu abbia messo form e dati all'interno di un unica pagina...l'errore notice vuol dire che le variabili non sono definite...
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<td align="left">
<select size="1" name="anno">
<option value="0">anno</option>
<option value="2004">2004</option>
<option value="2003">2003</option>
<option value="2002">2002</option>
<option value="2001">2001</option>
<option value="2000">2000</option>.......
<select size="1" name="mese" >
<option value="0">mese</option>
<option value="01">1</option>
.........select size="1" name="giorno" >
<option value="0">giorno</option>
<option value="01">1</option>
<option value="02">2</option>
.........
<input type="submit" name="submit" value="submit">
</form>
<?php
if(isset($_POST['submit'])){
$sesso = $_POST['sesso'];
$data_di_nascita = $_POST['data_di_nascita'];
$razza = $_POST['razza'];
$etnia = $_POST['etnia'];$query= "INSERT INTO registration (sesso,data_di_nascita,razza,etnia)";
$query.="VALUES('$sesso','$anno-$mese-$giorno','$razza','$etnia')";
$res_db=mysql_query($query)or die("Query non valida:".mysql_error());}
?>
-
Il messaggio è molto chiaro, forse dovresti recuperare gli attributi prima di utilizzarli:
[php]
$anno = $_POST['anno'];
$mese = $_POST['mese'];
$giorno = $_POST['giorno'];
[/php]
-
grazie a tutti, ho risolto.
gentilissimi.
ciao ciao