Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Login PHP

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    60

    Login PHP

    Ciao a tutti,
    sto realizzando una specie di login, purtroppo però mi sono bloccato.
    Qualcuno riuscirebbe a darmi una mano?
    Il codice è:
    Codice PHP:

    $email 
    $_POST['email'];
    $password $_POST['password'];
    $dati_inseriti $email." ~:~ ".$password;
    $chiave_accesso file_get_contents ("public/".$email."/x/pasx.txt");

    if(
    $dati_inseriti == $chiave_accesso){

    echo 
    header("Location: public/".$email."/dashboard.php");

    }
    else 
    {
        echo
    "Accesso negato";
        } 
    Lo script praticamente controlla solamente se nel file pasx.txt (contenuto in una cartella chiamata con lo stesso nome della mail ) e scritta la stessa cosa definita nella variabile $dati_inseriti. Se è la stessa cosa dovrebbe mandarmi alla pagina public/".$email."/dashboard.php altrimenti dire "Accesso Negato".

    Il problema è che mi da sempre "Accesso Negato" come risposta. Dove sbaglio?

    P.S. Non fate caso al fatto che non viene effettuato nessun controllo o cose del genere è solo una prova per valutarne il funzionamento.

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    sì... a parte i controlli (usare un dato dell'utente per un percorso dei file non è opportuno... se come mail si mettesse "../../" etc. etc. ... vabbè...) e il fatto che header è preceduto da "echo" (non dovrebbe) dovresti stampare a video le due variabili che confronti, con:

    var_export($dati_inseriti);
    var_export($chiave_accesso);

    prima dell'if così vedi esattamente cosa viene letto.. magari nel "txt" c'è qualche "a capo" in più in coda o roba del genere...

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    60
    Originariamente inviato da eiyen
    sì... a parte i controlli (usare un dato dell'utente per un percorso dei file non è opportuno... se come mail si mettesse "../../" etc. etc. ... vabbè...) e il fatto che header è preceduto da "echo" (non dovrebbe) dovresti stampare a video le due variabili che confronti, con:

    var_export($dati_inseriti);
    var_export($chiave_accesso);

    prima dell'if così vedi esattamente cosa viene letto.. magari nel "txt" c'è qualche "a capo" in più in coda o roba del genere...
    Grazie, c'era una spazio.
    Comunque ho un altro problema ho aggiunto un session che dovrebbe prendere un nome contenuto in un altro .txt e visualizzarlo successivamente in alcuni punti della pagina dashboard.php ma non funziona. Dove sbaglio???


    Codice PHP:
    session_start();
    $_SESSION['nome'] = file_get_contents ("public/".$email."/x/user.txt");
    $email $_POST['email'];
    $password $_POST['password'];
    $dati_inseriti $email." ~:~ ".$password;
    $chiave_accesso file_get_contents ("public/".$email."/x/pasx.txt");
    if(
    $dati_inseriti == $chiave_accesso){
    echo 
    header("Location: public/".$email."/dashboard.php");

    }
    else 
    {
        echo
    "Accesso negato";
        } 
    e la richiamo su dashboard.php con:

    Codice PHP:
    echo $_SESSION['nome']; 
    Sono sicuro che anche qui l'errore è banale ma sto cercando di imparare qualcosa su PHP con un po di pratica.
    Grazie in anticipo dell'aiuto.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.