Visualizzazione risultati 1 fino 5 di 5

Discussione: Login in php & txt che riporti alla pagina visualizzata prima del login!

  1. #1
    Guest

    Predefinito Login in php & txt che riporti alla pagina visualizzata prima del login!

    Ciao avendo codesto codice:
    Codice PHP:
    <?
    $user
    [1] = "ciao";
    $user[2] = "hello";
    $pwd[1] = "arrivederci";
    $pwd[2] = "byebye";
    if(
    user == $user[1] && $pass == $pwd[1] ||
    user == $user[2] $$ $pass == $pwd[2] ||
    ){
    include(
    'pvt.php');
    }else{
    header('WWW-Authenticate: Basic realm="Pagina Privata"');
    header('HTTP/1.0 401 Unauthorized');
    echo
    'Authorization Required.';
    }
    ?>
    Ora vi scrivo cosa desidererei.

    1) Invece di prelevare i dati login dallo stesso file, vorrei che venissero prelevati da un txt strutturato cosi user1|pass1 e sotto gli altri dati login.
    2) Invece di includere il file "pvt.php" mi riporti alla pagina che stavo visitando. Esempio:
    Ho 3 pagine private. p1, p2, p3.
    Se visito p1 senza permessi vengo portato alla pagina login con il codice di sopra che una volta effettuato il login correttamente mi faccia ritornare alla pagina p1.
    Idem per le altre pagine.
    (so che devo aggiungere un link nelle varie private per questo, quale?)

    [DS] Hai sbagliato sezione, per PHP esiste una sezione apposita...
    Ultima modifica di dementialsite : 18-08-2007 alle ore 21.46.25

  2. #2
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Scusa se te lo dico ma hai sbagliato una sintassi di codice:
    Codice PHP:
    <?
    $user
    [1] = "ciao";
    $user[2] = "hello";
    $pwd[1] = "arrivederci";
    $pwd[2] = "byebye";
    if(
    user == $user[1] && $pass == $pwd[1] ||
    user == $user[2] && $pass == $pwd[2] ||
    ){
    include(
    'pvt.php');
    }else{
    header('WWW-Authenticate: Basic realm="Pagina Privata"');
    header('HTTP/1.0 401 Unauthorized');
    echo
    'Authorization Required.';
    }
    ?>
    Hai messo "$" al posto di "&".
    Comunque anche a me potrebbe servire questo script, ti dispiace se lo uso anche io una volta completato?
    Apprezzi l'aiuto? Offrimi un caffè!

  3. #3
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,269

    Predefinito

    per (1) puoi utilizzare le funzioni file() ed explode(). Per (2) dovrai salvare le informazioni di login in un cookie o in una sessione, controllare che esistano nelle pagine private e se mancano o sono scorrette usare header() per passare alla pagina di login. Puoi ricordare la pagina "a cui tornare" con un parametro GET:
    Codice PHP:
    header("Location: login.php?ritorna=" . urlencode($_SERVER['PHP_SELF']);
    (PHP_SELF contiene l'url alla pagina stessa)

  4. #4
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Ho un mezzo codice ma non funziona
    Codice PHP:
    <?
    $pw
    = fopen("file.txt", "r");
    $login = explode("|", "$pw");
    if(
    user == $login){
    header("Location: login.php?ritorna=" . urlencode($_SERVER['PHP_SELF']);
    }else{
    echo
    "Errore Login";
    }
    ?>
    Sono sicuro che è sbagliato perchè quella guida di php.net a me non fa capire mai niente.
    Apprezzi l'aiuto? Offrimi un caffè!

  5. #5
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,269

    Predefinito

    beh, non è scrivendo una riga per ogni cosa che ho nominato che si crea un programma corretto. Il codice finirà diviso in almeno due pagine, e la (ben fatta) guida di php.net non ti spiega come scrivere ciò che vuoi, ma come funzionano gli strumenti che hai a disposizione.

    Pensare al problema da risolvere spesso aiuta a trovare una soluzione, ricorda

Regole di scrittura

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