Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Anomalia inserimento user e password

    Premetto che ho iniziato da poco a studiare php.
    Il problemino:
    ho creato due file, uno per l'inserimento di user e password e l'altro che le riceve e nel caso siano esatte (user e password) viene visualizzato il contenuto della pagina.
    I due file:
    modulo.htm

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Accedi</title>
    </head>
    <form name="modulo" action="accedi.php" method="post">
    Digita qui il codice di accesso:


    <label>User:
    <input type="user" name="codice_user" size="30" /></label>


    <label>Password:
    <input type="password" name="codice_password" size="30" /></label>


    <input type="submit" value="go"/>
    </form>
    </body>
    </html>


    accedi.php

    <?php
    // Recupero i dati dal form
    $codice_user = $_POST['codice_user'];
    $codice_password = $_POST['codice_password'];
    // Settare qui sotto la password reale di accesso all'area protetta
    $user_reale = "pippo";
    $pass_reale = "pippo";
    if (($codice_user!=$user_reale) && ($codice_password!=$pass_reale))

    {
    header("Location: modulo.htm");
    exit;
    }
    ?>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Documento senza titolo</title>
    </head>
    <body>


    </p>


    pagina di prova che si visualizzerà in caso di login corretto</p>
    </body>
    </html>

    L'anomalia: viene eseguito correttamente il login anche inserendo solo la user (oppure inserendo solo la password), mentre dovrebbe permettere il login solo se inserite user e password corrette.
    La user è "pippo" e la password è "pippo" (come si vede nel file accedi.php).
    L'anomalia dovrebbe essere su questa riga:
    if (($codice_user!=$user_reale) && ($codice_password!=$pass_reale))
    ma non riesco a capire dove.
    Mi date una mano? grazie.

  2. #2
    è una questione logica

    Codice PHP:
    <?php
    // Recupero i dati dal form
    $codice_user $_POST['codice_user'];
    $codice_password $_POST['codice_password'];
    // Settare qui sotto la password reale di accesso all'area protetta
    $user_reale "pippo";
    $pass_reale "pippo";
    if ((
    $codice_user==$user_reale) && ($codice_password==$pass_reale))
    {
    header("Location: paginapersonale.htm");
    exit;
    }
    else
    {
    echo 
    "user o password errate";
    }
    ?>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Documento senza titolo</title>
    </head>
    <body>


     </p>


    pagina di prova che si visualizzerà in caso di login corretto</p>
    </body>
    </html>
    Pensa a quello che veniva eseguito nell'else col codice di prima!
    Questa e' la mia firma! Lo so, e' una mezza schifezza.
    Un sito
    - skype non è per consulenze online -

  3. #3
    Aggiustato cosi:

    <?php
    // Recupero i dati dal form
    $codice_user = $_POST['codice_user'];
    $codice_password = $_POST['codice_password'];
    // Settare qui sotto la password reale di accesso all'area protetta
    $user_reale = "pippo";
    $pass_reale = "pippo";
    if (($codice_user==$user_reale) && ($codice_password==$pass_reale))
    {
    header("Location: paginapersonale.htm");
    exit;
    }
    else
    {
    header("Location: modulo.htm");
    }
    ?>

    cambiato la parte relativa all' else, in modo che torni sempre alla pagina di login in caso di autentificazione errata.
    Ti ringrazio per la soluzione, mi sei stato di grande aiuto. ciao

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.