Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1
    Ho dato uno sguardo rapido, un problema potrebbe essere l'utilizzo degli header improprio. Le funzioni per inviare header devono essere utilizzate prima di qualsiasi output.
    Anche se c'è la soluzione, basta bufferizzare l'output, puoi vedere qui:
    http://forum.html.it/forum/showthread/t-1100350.html
    CODENCODE \ Branding \ Design \ Marketing
    www.codencode.it

  2. #2
    Ci sono tante cose migliorabili, ma per quello non si finisce mai,
    l'uso eccessivo del redirect è una di queste

    a me sembra che l'errore sta qui

    if (mysql_num_rows($cerco) == 0) {

    //qui dovrebbe andare il codice in caso di fallimento del login
    //tu hai fatto il contrario

    }
    semplicità ... al sol nominarla sembra svanire

  3. #3
    Se stampa "Utente non trovato" vuol dire che ha eseguito la query ma non ha trovato nessun utente

    codice:
     
    if (mysql_num_rows($cerco) == 0) {
    ...
    echo "Utente non trovato";
    fai una stampa della query, eseguila dal tuo dbadmin, e prova a capire perchè non lo trova

    $query = "SELECT id,username, nome, attivo FROM utenti WHERE username='" . $_POST['username'] . "' AND password='" . md5($_POST['password']) . "' AND attivo ='1'";

    echo $query;
    semplicità ... al sol nominarla sembra svanire

  4. #4

    Re: Ciao

    Originariamente inviato da paperinik4
    Però io sono sicuro che l'utente esiste, perchè lo verifico ogni volta
    Allora evidentemnte la password non è corretta, oppure l'utente non ha il campo attivo settato a '1'

  5. #5
    effettivamente sembra tutto ok...
    sei sicuro di star leggendo anche dal database giusto?

  6. #6
    guarda il tuo codice è giusto...il problema è sul db...


    fai così prendi paginaris.php

    e tra
    echo "Utente non trovato";
    header("Refresh: 10;URL=login.php");

    metti questo:

    Codice PHP:
    echo "Utente non trovato";
    // CONTROLLIAMO LA TABELLA DEL DB!!!
    $query2 "SELECT * FROM utenti";
    $cerco2 mysql_query($query2);
    $j=0;
    while (
    $row2 mysql_fetch_row($cerco2)) {
        echo 
    "
     "
    ;
        foreach (
    $row2 as $value
        {
            echo 
    "$value - ";
            
        }
        echo 
    "
     "
    ;
        
    $j++;
    }
    if (
    $j==0) echo "LA TABELLA DEL DB E' VUOTA!!";
    //-------------------------------------------------
    header("Refresh: 10;URL=login.php"); 
    così vediamo cosa c'è che non va!!!

  7. #7
    sì volevo dire su login

  8. #8
    c' solo un
    header("Refresh: 10;URL=login.php");
    di troppo...

    comunque se ti restituisce solo l'array vuol dire che non ti da più utente non trovato???
    funziona???

  9. #9
    Mi restituisce la seguentecosa:

    Arrayarray(4) { ["username"]=> &string(10) "paperinik4" ["password"]=> &NULL ["attivo"]=> &int(1) ["pass"]=> &NULL }
    questo è l'output di var_dump($_SESSION);

    quindi ora l'utente è loggato !!!

    la faccio io una domanda, perchè salvare la password in sessione?

    a questo punto quello che non funziona è il redirect
    header("Refresh: 10;URL=paginaris.php");

    ma piuttosto che darti la soluzione dovresti leggerti il link che ti era stato suggerito sul redirect
    semplicità ... al sol nominarla sembra svanire

  10. #10
    Non vorrei dire na boiata visto che mi sono appena svegliato ma a me sembra che:

    1: nella pagina di login all'interno del form non specifichi un action. Che sia self o venga richiesta un altra pagina deve esserci.
    2: Non recuperi nessun dato inerente alla richiesta tramite post che esegue il form.

    Se mi ripiglio proverò a buttarci un occhio ma al momento rimango .
    Fare o non fare....non c'è provare!

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.