Salve a tutti, ho un problema con questa stringa che ho realizzato in php. Ho lasciato solo un elemento qui in basso (giorno), tuttavia tengo a precisare che se oltre a giorno nel form metto username, Nome, ecc; gli aggiornamenti avvengono perfettamente, tutti ad eccezzione di giorno che non riesco neanche a stampare nella pagina. Inoltre se provo il form con mese o anno il risultato è lo stesso. Il form serve per quelle sezioni dove occorre modificare una data o crearne una dove non ci sia; nel database giorno, mese e anno non sono messi come una data unica, ma separati in 3 parti, ognuna di tipo int, con un massimo di 2 caratteri per mesi e giorni e 4 per anno. Nel modo sotto descritto riesco a modificare anche l' id (tipo int e chiave e primaria), tuttavia non riesco nenache a stampare il giorno contenuto nel database. Se qualcuno potesse darmi una spiegazione ne sarei felice.


Codice PHP:
<?php if(isset($_SESSION['username'])){  $username mysql_real_escape_string($_POST['username']); $giorno mysql_real_escape_string($_POST['giorno']); $id mysql_real_escape_string($_POST['id']);                        echo '<input type="hidden" name="id" value="'.$_SESSION["id"].'" />';                       echo '<table width=100% height=100%><tr>';                       echo '<td width="20%"><label for="giorno">Giorno</label></td><td><input type="text" name="giorno" value="'.$_SESSION["giorno"].'" /></td></tr>';                       echo '<tr><td width="80%"><input type="submit" id="submit" value="Invia" /></td></tr></table>';   if($username == "" || $id == ""){ }else{ $recuperauseremail mysql_query("SELECT id FROM utenti WHERE (username='.$username.' OR id='.$id.') AND username!='".$_SESSION['username']."'"); $contausermail mysql_num_rows($recuperauseremail); if($contausermail 0){ } else { $inviautenti mysql_query("UPDATE utenti SET giorno='$giorno' WHERE id = '$id' AND username = '$username'");             if($inviautenti){ $_SESSION["giorno"] = $giorno; }} } }   ?>
Ciao!!