Visualizzazione risultati 1 fino 18 di 18

Discussione: Dati nel db non presenti

  1. #1
    Guest

    Predefinito Dati nel db non presenti

    Buongiorno, ho eseguito uno script registrazione e login in php da un tutorial, funziona QUASI tutto, ma quando provo a fare il login mi da il messaggio "Dati non presenti nel database" ma in realtà nel Db ci sono.
    Qualcuno può aiutarmi x favore?

  2. #2
    Guest

    Predefinito

    Visto che abbiamo la sfera di cristallo a riparate potresti iniziare con il postare il codice usato...

  3. #3
    Guest

    Predefinito

    Questa è il codice di login
    Codice PHP:
    <?php

    include 'header.php';

    ?>

    <div id="wrapper">

    <?php

    $p
    = $_GET['azione'];

    // login.php?azione=login
    if($p == "login"){

    if(!isset(
    $_POST['invia'])){ ?>

    <form method="post" action="#" id="formlogin">

    <label for="username">Username</label>
    <input type="text" name="username" id="username" /><br>
    <label for="password">Password</label>
    <input type="password" name="password" id="password" /><br>
    <input type="submit" name="invia" id="login" value="Accedi" />

    </form>

    <?php } else {

    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);

    if(
    $username == "" || $password == ""){

    echo
    "Attenzione, devi compilare tutti i campi";

    } else {

    $password_cript = md5($password);

    $recuperadati = mysql_query("SELECT * FROM utenti WHERE username = '$username' AND password = '$password_cript'");

    $verificadati = mysql_num_rows($recuperadati);

    if(
    $verificadati == 1){

    $sessione = mysql_fetch_array($recuperadati);
    $_SESSION['utente'] = $sessione['username'];
    echo
    "Login effettuato con successo!";
    header("Refresh: 2; URL= index.php");

    } else {

    echo
    "Dati non presenti nel database!";

    }

    }

    }


    // login.php?azione=logout
    } elseif ($p == "logout"){

    session_destroy();
    echo
    "Logout effettuato con successo!";
    header("Refresh: 2; URL= index.php");

    }



    ?>



    </div>

    </body>
    </html>
    Ultima modifica di alemoppo : 25-03-2013 alle ore 23.49.22 Motivo: +tag [php]

  4. #4
    Guest

    Predefinito

    Questa è quella di registrazione

    Codice PHP:
    <?php

    include 'header.php';

    ?>

    <div id="wrapper">

    <?php

    if(!isset($_GET['passkey'])){

    if(!isset(
    $_POST['invia'])){ ?>

    <form method="post" action="#" id="formregistrazione">

    <ul>
    <li><label for="username">Username</label>
    <input type="text" name="username" id="username" />
    </li>
    <li>
    <label for="password1">Password</label>
    <input type="password" name="password1" id="password1" />
    </li>
    <li>
    <label for="password2">Ripeti Password</label>
    <input type="password" name="password2" id="password2" />
    </li>
    <li>
    <label for="email">Email</label>
    <input type="text" name="email" id="email" />
    </li>
    </ul>
    <input type="submit" name="invia" id="registrati" value="Registrati" />
    </form>

    <?php } else {

    // creazione di un codice di conferma
    $codiceconferma = md5(uniqid(rand()));

    // Valori del form

    $username = mysql_real_escape_string($_POST['username']);
    $password1 = mysql_real_escape_string($_POST['password1']);
    $password2 = mysql_real_escape_string($_POST['password2']);
    $email = mysql_real_escape_string($_POST['email']);

    // controllo campi vuoti e password

    if($username == "" || $email == ""){
    echo
    "Devi riempire tutti i campi";
    }elseif(
    $password1 == "" || $password2 == ""){
    echo
    "Devi riempire tutti i campi";
    }elseif(
    $password2 != $password1){
    echo
    "Le password devono coincidere";
    }else{

    $recuperauseremail = mysql_query("SELECT id FROM utenti WHERE username='$username' OR email='$email'");
    $contausermail = mysql_num_rows($recuperauseremail);

    if(
    $contausermail > 0){

    echo
    "Nome utente o email già disponibili";

    } else {

    // Invia dati alla tb utenti_temp

    $inviautentitemp = mysql_query("INSERT INTO utenti_temp (codiceconferma, username, password, email) VALUES ('$codiceconferma', '$username', '$password2', '$email')");

    if(
    $inviautentitemp){

    $to=$email;
    $subject="Conferma la Registrazione";
    $header="Da: Amministratore";
    $message="Ecco il tuo codice di attivazione \r\n";
    $message.="Clicca sul link per confermare la registrazione \r\n";
    $message.="http://tonysicy.it/sito/register.php?passkey=$codiceconferma";

    $sentmail=mail($to,$subject,$message,$header);

    }

    if(
    $sentmail){

    echo
    "Per completare la registrazione controlla la tua casella di posta elettronica e clicca sul link di attivazione.";

    }else{

    echo
    "Errore, link di attivazione non inviato.";

    }

    }
    }

    }

    } else {

    $passkey = $_GET['passkey'];

    $sqlrecuperauser = "SELECT * FROM utenti_temp WHERE codiceconferma = '$passkey'";
    $risultatouser = mysql_query($sqlrecuperauser);

    if(
    $risultatouser) {

    $contauser = mysql_num_rows($risultatouser);

    if(
    $contauser == 1){

    $rows = mysql_fetch_array($risultatouser);
    $username = $rows['username'];
    $email = $rows['email'];
    $password = $rows ['password'];

    $passwordcript = md5($password);

    $sqlconfermauser = mysql_query("INSERT INTO utenti (username, password, email) VALUES ('$username', '$passwordcript', '$email')");

    if (
    $sqlconfermauser) {

    echo
    "Il tuo account è stato attivato con successo";
    $sqleliminadati = mysql_query("DELETE FROM utenti_temp WHERE codiceconferma = '$passkey'");

    } else {

    echo
    "Errore!";

    }

    }

    }

    }

    ?>


    </div>


    </body>
    </html>
    Ultima modifica di alemoppo : 25-03-2013 alle ore 23.49.49 Motivo: +tag [php]

  5. #5
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,247

    Predefinito

    Quel:
    Codice PHP:
    if($verificadati == 1){
    Mi fa pensare che ti sei iscritto due volte con lo stesso user e password.
    Altrimenti prova a stampare la query:
    Codice:
    SELECT * FROM utenti WHERE username = '$username' AND password = '$password_cript'"
    (per stampare, intendo fare una echo di quella stringa, così vedi se vengono sostituite correttamente le variabili).

    Ciao!

  6. #6
    Guest

    Predefinito

    Ciao, scusa ma di php ne so proprio poco, ho provato a fare la stampa di


    "SELECT * FROM utenti WHERE username = '$username' AND password = '$password_cript'"
    Ma mi restituisce esattamente questa stringa

    EDIT:

    Ho notato che anche se cancello tutti gli account
    Dal database l'autoincrement va avanti.
    Può essere quello il problema?
    Ultima modifica di tonysicy : 26-03-2013 alle ore 00.25.04 Motivo: Non fare post consecutivi: usa il tato "Edita" per editare i messaggi!

  7. #7
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,247

    Predefinito

    Citazione Originalmente inviato da tonysicy Visualizza messaggio
    Ciao, scusa ma di php ne so proprio poco,
    Non è un buon punto di partenza per gestire un sito.


    Citazione Originalmente inviato da tonysicy Visualizza messaggio
    ho provato a fare la stampa di "SELECT * FROM utenti WHERE username = '$username' AND password = '$password_cript'"
    Ma mi restituisce esattamente questa stringa
    Strano: $username e $password_cript dovrebbero essere sostituite con i loro relativi valori...

    Citazione Originalmente inviato da tonysicy Visualizza messaggio
    Ho notato che anche se cancello tutti gli account
    Dal database l'autoincrement va avanti.
    Può essere quello il problema?
    È normale: non è quello il problema.

    Ciao!

  8. #8
    Guest

    Predefinito

    Non ne esco più

  9. #9
    Guest

    Predefinito

    La cosa strana che a chi ha fatto il videotutorial funziona tutto.
    Io ho seguito alla lettera il codice e infine ho scaricato anche lo script finito.
    Il risultato è lo stesso!

  10. #10
    Guest

    Predefinito

    Posso suggerirti un sito web dove puoi scaricare gratuitamente gli script di login e di registrazione? Eccolo: [cut] . E' di un mio amico.. Goditelo ;)
    Ultima modifica di alemoppo : 26-03-2013 alle ore 14.14.39 Motivo: [cut]

  11. #11
    Guest

    Predefinito

    Grazie

  12. #12
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,247

    Predefinito

    Citazione Originalmente inviato da italianwebhack Visualizza messaggio
    Posso suggerirti un sito web dove puoi scaricare gratuitamente gli script di login e di registrazione? Eccolo: [cut] . E' di un mio amico.. Goditelo ;)
    Più che tuo amico, quello è spam perché è il tuo sito.
    Tutti potremmo fare guide e linkarle nei nostri siti.

    Inoltre, ho aperto 2 pagine di quel sistema login: vedo tag <center> e <font>; pagine che iniziano con <title> (quindi <html>, <head> bypassate), e poi c'é la session_start() come se sopra non ci fosse dell'html. Non apro le altre pagine.
    Prova a validare quelle pagine, così riuscirai a correggerle.

    A questo punto, molto meglio questa.

    Ciao!
    Ultima modifica di alemoppo : 26-03-2013 alle ore 14.21.42

  13. #13
    Guest

    Predefinito

    Ho provato anche quello script, funziona tutto ma non mi fa loggare, quindi presumo sia lo stesso errore.
    Non è mica un problema del server che non fa restituire i dati dal database?

  14. #14
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,247

    Predefinito

    Hai attivato il database? In che senso non fa loggare? Quale errore appare? Quale script hai provato?

    Ciao!

  15. #15
    Guest

    Predefinito

    Ne ho provaro tanti, funzionano tutti fino al login dopo di che mi da errore di login o dati non presenti nel database ma in realtà il database è ok.
    Registrazione ok
    Invio emai con codice di attivazione ok
    Attivazione dati ok
    Quando faccio il login non va.
    È strano che con script diversi il problema sia lo stesso.

  16. #16
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,247

    Predefinito

    Che errore ricevi nel login? Hai verificato che nel database ci siano i dati dell'account registrato?

    Ciao!

  17. #17
    Guest

    Predefinito

    i dati dell'account registrato ci sono, non mi fa effettuare il login e basta.
    come se il login fosse sbagliato

  18. #18
    Guest

    Predefinito

    Finalmente ho risolto c'era una variabile errata, per gli altri script non so ma mi va bene questo.
    Grazie per l'attenzione e la pazienza prestata.

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •