• Bannato User Attivo

    controllo username

    ciao ragazzi ho questo problema:

    in questo file effettuo l?inserimento dei dati degli utenti che si registrano mediante un form,
    ma vorrei inserire un controllo sull?username.cioè se un utente inserisci un username già esistente deve dire che cè un errore. come posso fare?mi aiutate?

    <?php
    //Connessione al database
    mysql_connect('localhost', 'root','milano') or die('Non riesco a connettermi a MySQL');
    mysql_select_db('tutoronline') or die('Non riesco a connettermi al Database');

    //Recupero i valori da una Form mediante il metodo POST
    $username = @$_POST['username'];
    $password = @$_POST['password'];
    $nome= @$_POST['nome'];
    $cognome = @$_POST['cognome'];
    $indirizzo = @$_POST['indirizzo'];
    $città = @$_POST['città'];
    $CAP = @$_POST['CAP'];
    $paese = @$_POST['paese'];
    $provincia = @$_POST['provincia'];
    $telefono1 = @$_POST['telefono1'];
    $telefono2 = @$_POST['telefono2'];
    $email = @$_POST['email'];
    $confermaemail = @$_POST['confermaemail'];
    $datanascita = @$_POST['datanascita'];
    $sesso= @$_POST['sesso'];
    $comunenascita = @$_POST['comunenascita'];
    $codicefiscale = @$_POST['codicefiscale'];

            //Controllo se l' username e la password non sono vuoti
            if((!strlen($username) == 0) and (!strlen($password) == 0)){
                         
                        
                        
                        $strSQL = "INSERT INTO utenti(username, password, nome, cognome, indirizzo, città, CAP, paese, provincia, telefono1,
                                                      telefono2, email, confermaemail, sesso, comunenascita, codicefiscale)";
                        $strSQL .= "VALUES('$username', MD5('".$password."'), '$nome', '$cognome', '$indirizzo', '$città', '$CAP', '$paese', '$provincia', '$telefono1',
                                           '$telefono2', '$email', '$confermaemail', '$sesso', '$comunenascita', '$codicefiscale')";
                        mysql_query($strSQL);
                        echo "<br>UTENTE INSERITO CON SUCCESSO!!!</a>";
                        }
                        
                        
                        else{ 
            echo "ATTENZINE!COMPILARE I CAMPI! INSERIMENTO NON EFFETTUATO !"; 
                        }
    

    //Chiudo la connessione al db
    mysql_close();

    //Visualizzo il link per l' homepage

    ?>


  • User Attivo

    Non l'ho provato ma dovresti fare + o - così:

    
    <?php
    //Connessione al database
    mysql_connect('localhost', 'root','milano') or die('Non riesco a connettermi a MySQL');
    mysql_select_db('tutoronline') or die('Non riesco a connettermi al Database');
    
    //Recupero i valori da una Form mediante il metodo POST
                $username = @$_POST['username'];
                $password = @$_POST['password'];
                $nome= @$_POST['nome'];
        $cognome = @$_POST['cognome'];
    $indirizzo = @$_POST['indirizzo'];
    $città = @$_POST['città'];
    $CAP = @$_POST['CAP'];
    $paese = @$_POST['paese'];
    $provincia = @$_POST['provincia'];
    $telefono1 = @$_POST['telefono1'];
    $telefono2 = @$_POST['telefono2'];
    $email = @$_POST['email'];
     $confermaemail = @$_POST['confermaemail'];
                $datanascita = @$_POST['datanascita'];
                                       $sesso= @$_POST['sesso'];
                $comunenascita = @$_POST['comunenascita'];
                            $codicefiscale = @$_POST['codicefiscale'];
    
     $strSQL = "SELECT * FROM utenti WHERE username = '$username'";
    $ris = mysql_query($strSQL);
    $trovato = mysql_num_rows($ris);
    
                //Controllo se l' username e la password non sono vuoti
                if(strlen($username) != 0 && strlen($password) != 0 && !trovato){
    
     $strSQL = "INSERT INTO utenti(username, password, nome, cognome, indirizzo, città, CAP, paese, provincia, telefono1,
                                                          telefono2, email, confermaemail, sesso, comunenascita, codicefiscale)";
     $strSQL .= "VALUES('$username', MD5('".$password."'), '$nome', '$cognome', '$indirizzo', '$città', '$CAP', '$paese', '$provincia', '$telefono1',
     '$telefono2', '$email', '$confermaemail', '$sesso', '$comunenascita', '$codicefiscale')";
                            mysql_query($strSQL);
                            echo "<br>UTENTE INSERITO CON SUCCESSO!!!</a>";
                            }
    
    
                            else{ 
                echo "ATTENZINE!COMPILARE I CAMPI! INSERIMENTO NON EFFETTUATO !"; 
                            }
    
    
    
    //Chiudo la connessione al db
    mysql_close();
    
    //Visualizzo il link per l' homepage
    
    
    
    ?>
    
    

  • Bannato User Attivo

    ciao, per funzionare ho uato questo

    //CONTROLLO SE L'USERNAME UTILIZZATO DA UN NUOVO UTENTE E' GIA' IN USO OPPURE NO
    $query = "SELECT username FROM utenti WHERE username = '$username'";
    $result = mysql_query($query) or die("Errore nella query:".mysql_error());

    if (mysql_num_rows($result) > 0){ 
              echo "Il nome $username è in uso"; 
              echo "<a href=\"javascript:history.back()\">Torna Indietro</a>"; 
          } 
          else {
    

    $strSQL = "INSERT INTO utenti(username, password, nome, cognome, indirizzo, città, CAP, paese, provincia, telefono1,
    telefono2, email, confermaemail, datanascita, sesso, comunenascita, codicefiscale)";
    $strSQL .= "VALUES('$username', MD5('".$password."'), '$nome', '$cognome', '$indirizzo', '$città', '$CAP', '$paese', '$provincia', '$telefono1',
    '$telefono2', '$email', '$confermaemail', '".$datanascita."', '$sesso', '$comunenascita', '$codicefiscale')";

      mysql_query($strSQL)OR die("Errore nella query:".mysql_error());
               echo "<br>UTENTE INSERITO CON SUCCESSO!!!</a>";
               }
    

    ma ora non mi va il controllo se il campo username o password sono vuoti.
    come faccio a metterli insieme?


  • User Attivo
    if (mysql_num_rows($result) > 0){ 
    echo "Il nome $username è in uso"; 
    echo "<a href=\"javascript:history.back()\">Torna Indietro</a>"; 
    } 
    else if((!strlen($username) == 0) and (!strlen($password) == 0)){
      echo "ATTENZINE!COMPILARE I CAMPI! INSERIMENTO NON EFFETTUATO !"; 
      echo "<a href=\"javascript:history.back()\">Torna Indietro</a>"; 
      }
    else {
    $strSQL = "INSERT INTO utenti(username, password, nome, cognome, indirizzo, città, CAP, paese, provincia, telefono1,
    telefono2, email, confermaemail, datanascita, sesso, comunenascita, codicefiscale)";
    $strSQL .= "VALUES('$username', MD5('".$password."'), '$nome', '$cognome', '$indirizzo', '$città', '$CAP', '$paese', '$provincia', '$telefono1',
    '$telefono2', '$email', '$confermaemail', '".$datanascita."', '$sesso', '$comunenascita', '$codicefiscale')";
    
    mysql_query($strSQL)OR die("Errore nella query:".mysql_error());
    echo "<br>UTENTE INSERITO CON SUCCESSO!!!</a>";
    }
    
    
    

  • Bannato User Attivo

    ciao ho provato come mi hai scritto ma se lascio i campi vuoti mi inserisce un utente con username nullo e non mi da nessun errore


  • User Attivo

    Hai ragione, l'if é così:

    elseif((strlen($username) == 0) || (strlen($password) == 0)){


  • Bannato User Attivo

    ok grazie ora funziona benissimo

    grazie mille