Ragazzi devo utilizzare un database per un progetto all'università e stavo gestendo una registrazione e non riesco a inserire i dati, il codice prende input da una form e vanno a finire qui:
	
	
	
		
Per controllare che la registrazione è andata a buon fine devo verificare che la variabile della query sia 'false'?
Non riesco a capire perchè non riesco ad eseguirla è un problema del database che ho chiamato il nick con campo 'user_name' ? Forse dovrei togliere l' '_' .
				
			
		Codice:
	
	<?PHP
// variabili di connessione
// nome server, nome utente,
// Password, nomedatabase, tabella
$ServerName = "localhost";
$UserName = "root";
$Password = "madara";
$DbName = "EP";
$tbl_name="studente";
// la connessione al database e alla tabella
$conn = mysql_connect($ServerName, $UserName, $Password) or die("CONNECTION NON RIUSCITA");
mysql_select_db($DbName, $conn);
$nome = $_GET["nome"];
$cognome = $_GET["cognome"];
$universita=$_GET['universita'];
$username = $_GET["username"];
$password = $_GET["password"];
$conferma=$_GET['conferma'];
$email = $_GET["email"];
$universita = $_GET["universita"];
//$nome = preg_replace("/[^a-z0-9]+/i", "", $_GET['nome']);
//ad eliminare tutti i caratteri in una stringa che non sono numeri/lettere
//ctype_alnum() -> numeri e lettere 
//$str = "CIAO"; $str .= "MONDO"; risultato $str = "CIAO $mondo";
//vedi funzione extract()
//mysql_real_escape_string fa l'escape dei caratteri speciali tipo 
//$username_safe = mysql_real_escape_string($username) e nella query devo mettere per tutte le variabili xxxxx_safe per salvaguardarle
//Verifico il valore di $nome;
 if(chkEmail($email)) {
    if( (!empty($password)) and (!empty($conferma)) ){
         if( $password!=$conferma ) echo"<center>le password non corrispondono : ricontrolla i campi password</center>"; 
         else{ 
                if( (empty($nome)) or (empty($cognome)) or (empty($username)) ) 
                    echo"<center>inserire tutti i campi è obbligatorio</center>";    
                else{
                       if( ($universita=="Salerno") or  ($universita=="Londra") ){
                           $MySql = "SELECT * FROM '.$tbl_name.' WHERE user_name='$username'";
                           $Result = mysql_query($MySql,$conn) or die("Comunicazione al database fallita");
                           $rs = mysql_fetch_array($Result);
                           $a1 = $rs['user'];
                           $a2 = $rs['email'];
                           $rs->close; 
                           if($a1 == $username){
                              die("Questo Nome utente già esiste!");
                           }
                           $Result2 = mysql_query("SELECT * FROM '.$tb1_name.' WHERE e-mail='$email'") or die(mysql_query());
                           $rs2 = mysql_fetch_array($Result2);
                           $a2 = $rs2['email'];
                           $a3 = $rs2['user'];
                           $rs->close; 
                           if($a2 == $email){
                              die("Questa email è già stata usata dall'utente: $a3");
                           }
                           //$query="Insert into `$tbl_name` (`nome`,`cognome`,`user_name`,`password`,'e-mail','universita') VALUES ('$nome','$cognome','$username','$password','$email','$universita')";
                           $password=d5(sha1(md5(sha1($password))));
                           $query="Insert into ".$tb1_name." (`nome`,`cognome`,`user_name`,`password`,`e-mail`,`universita`) VALUES ('".$nome."','".$cognome."','".$username."','".$password."','".$email."','".$universita."')";
                           
                           $result=mysql_query($query,$conn); // result ci serve x fare il controllo
                           mysql_close($conn);
                           if (!$result)  die("errore registrazione");
                           else echo "<center>".$nome ." ti sei iscritto, ora sei riconosciuto come ".$username."</center>";
                       }
                       else{
                               if(empty($universita)) echo"<center>Spiacente se non inserisce la sua università non può proseguire</center>";
                               else echo"<center>Spiacente la tua università non fa parte del progetto European Platform </center>";
                            }
                     }
                }
     }
   else
         echo"<center>campi password non inseriti correttamente</center>";
   }
     
?>
<?php
function chkEmail($email)
{
    // elimino spazi, "a capo" e altro alle estremità della stringa
    $email = trim($email);
    // se la stringa è vuota sicuramente non è una mail
    if(!$email) {
                 return false;
     }
     // controllo che ci sia una sola @ nella stringa
    $num_at = count(explode( '@', $email )) - 1;
    if($num_at != 1) {
                           return false;
    }
     // controllo la presenza di ulteriori caratteri "pericolosi":
    if(strpos($email,';') || strpos($email,',') || strpos($email,' ')) {
             return false;
    }
    // la stringa rispetta il formato classico di una mail?
    if(!preg_match( '/^[\w\.\-]+@\w+[\w\.\-]*?\.\w{1,4}$/', $email)) {
                      return false;
     }
     return true;
}
?>
	Per controllare che la registrazione è andata a buon fine devo verificare che la variabile della query sia 'false'?
Non riesco a capire perchè non riesco ad eseguirla è un problema del database che ho chiamato il nick con campo 'user_name' ? Forse dovrei togliere l' '_' .