Pagina 1 di 5 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 50

Discussione: Database e php

  1. #1

    Database e php

    Salve a tutti....

    Ho postato un questa sezione per un problema, non riesco a creare uno scritp in PHP che esegue la ricerca di un determinato nome nel database.

    Mi spiego meglio, io ho un database Mysql, in questo voglio cercare se esiste già un determinato nome. In rete non ho trovato molto.

    Grazie

  2. #2
    Inizia postando la struttura della tabella del database ed il codice che hai scritto fino a questo momento.

  3. #3
    Grazie per la risposta.

    Il database si chiama db

    Dentro c'è la tabella login, al suo interno ci sono 8 record, tra cui quello che mi interessa che si chiama nick.

    Ora io devo, dato un nome, per esempio Zampi91, cercare se questo è già presente nel database nel record nick.

    ho già fatto tutte le stringhe di connessione e funzionano dato che riesco a caricare di dati e a leggerli, ho anche già il form che mi acquisisce il nome e lo invia alla pagina php.

    A me manca solo il segmento di codice che mi fa la ricerca.

    Grazie

  4. #4
    Originariamente inviato da filippo.toso
    Inizia postando la struttura della tabella del database ed il codice che hai scritto fino a questo momento.

  5. #5
    Il codice è bello lungo

    <?php

    //Parametri connessione al database
    $ServerName = "localhost";
    $UserName = "root";
    $Password = "password";
    $DbName = "db";
    $TableName= "login";

    // Mi connetto al database e alla tabella
    $MyConn = mysql_connect($ServerName, $UserName, $Password )
    or die ("Connessione fallita sul server $ServerName
    ");
    $MyDb = mysql_select_db ($DbName, $MyConn)
    or die ("Selezione del database fallita su $DbName
    ");

    //Controllo parametri passati dalla pagina di registrazione (Solo dopo li inserisco nel database)

    // Recupero il valore dei campi del form
    $nick = $_POST['NomeUtente'];

    $password = $_POST['Password1'];
    $password2 = $_POST['Password2'];

    $email = $_POST['Email1'];
    $email2 = $_POST['Email2'];

    $nome = $_POST['Nome'];
    $cognome = $_POST['Cognome'];


    //Verifico che tutti i campi siano riempiti

    if($nick == "" or $password == "" or $email == "" or $nome == "" or $cognome == ""){
    echo " <script language='Javascript'>
    alert('Alcuni campi sono rimasti vuoti')
    location.href = 'index.html'
    </script>
    ";
    }

    //Verifico lunghezza password (deve essere pari o maggiore di 6)
    $lunghezzaPass=strlen($password);
    if($lunghezzaPass < 6){
    echo " <script language='Javascript'>
    alert('Password troppo corta')
    location.href = 'index.html'
    </script>
    ";
    }

    //Verifico che le password coincidano

    if($password != $password2){
    echo " <script language='Javascript'>
    alert('Password non coincidenti')
    location.href = 'index.html'
    </script>
    ";
    }

    //Verifico che le mail coincidano

    if($email != $email2){
    echo " <script language='Javascript'>
    alert('Email non coincidenti')
    location.href = 'index.html'
    </script>
    ";
    }

    //Verifico se il nome utente è già in uso QUI VA IL CONTROLLO DEL NOME

    //$ceck_nick = mysql_query(\"select user from nick\");
    //if ($ceck_nick == $nick) {
    //echo " <script language='Javascript'>
    //alert('Esiste già un utente registrato con questo nome')
    //location.href = 'index.html'
    //</script>
    //";
    //exit;
    //}

    //Genero codice antispam

    $antiSpam = rand(100000,999999);

    //Salvo lo stato della conferma (0=NO)

    $conferma = 0;

    //Preparo i parametri per l'invio della mail

    $oggetto = "Attivazione account";
    $intestazioni= "mail";

    //Messaggio della mail

    $messaggio="Benvenuto nel portale di Acquario online.

    qui sotto troverai il codice che dovrai inserire
    dopo la registrazione per attivare l'account.
    CODICE:$antiSpam



    Lo staff la ringrazia.";

    //Invio la mail e salvataggio dati nel database

    if(mail($email, $oggetto, $messaggio, $intestazioni)){
    //Carico gli elementi nel database, dove vengono salvati

    $MyVarSQL = "INSERT INTO $TableName(nick, password, attivazione, nome, cognome, email, conferma) VALUES ('$nick', '$password', '$antiSpam', '$nome', '$cognome', '$email', '$conferma')";

    //Verifico se l'inserimento nel database è andato a buon fine

    $MyQuery = mysql_query($MyVarSQL,$MyConn) or die ("Query di selezione fallita Query di selezione fallita INSERT INTO MyVarSQL
    ");

    //Posizione ID

    $q = "SELECT LAST_INSERT_ID() FROM $TableName";
    $posizione = mysql_num_rows(mysql_query($q)) + 2;

    //Apro la pagina di conferma iscrizione

    echo " <script language='Javascript'>
    location.href = 'conferma.php?nick=$nick&pos=$posizione'
    </script>
    ";

    }
    //Controllo e salvataggio dati completato
    ?>

  6. #6
    nome tabella: login
    Record:

    id (INT)
    nick (VARCHAR)
    password (VARCHAR)
    attivazione (INT)
    nome (VARCHAR)
    cognome (VARCHAR)
    email (VARCHAR)
    conferma (INT)

  7. #7
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Codice PHP:
     // esegui la query verifcando se il nome esiste
    $query "select user from nick where nick = '$nick' ";
    $res mysql_qeury($query) or die ("query controllo nick non riuscita: " .mysql_error());
    // conta quante righe contiene il resulset
    $conta mysql_num_rows($res);
    // controlla se le righe sono più di zero. In caso positivo segnala l'errore
    if ($conta 0) {
    echo 
    " <script language='Javascript'>
    alert('Esiste già un utente registrato con questo nome')
    location.href = 'index.html'
    </script>
    "
    ;
    exit;

    Prova un po', non ho verificato, magari c'è qualche errore di sintassi

  8. #8
    grazie..

    Allora mi da questo:
    query controllo nick non riuscita: Table 'acquario.nick' doesn't exist

  9. #9
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Codice PHP:
    $query "select user from nick where nick = '$nick' "
    è sbagliata, date le tue indicazioni (io ho cercato di risolvere il problema che ponevi tu)...
    Codice PHP:
    $query "select nick from login where nick = ' .$nick. ' "
    prova un po'

  10. #10
    facendo come dici te ora va.. ma mettendo lo stesso nick di uno già inserito lo salva cmq

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.