Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17

Discussione: protezione

  1. #1

    protezione

    allora... ho fatto una cartella con dentro una pagina login.php attraverso il quale l'utente deve passare x accedere alle altre pagine della cartella senza k c acceda direttamente... cm faccio a creare questa protezione?

  2. #2

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Quindi in login.php:
    1. Cominci con session_start().
    2. Ricevi nomeutente e password dal form e se questi sono validi regoli una variabile $_SESSION["loggato"]=true

    In tutti i file che hanno bisogno dell'autenticazione invece:
    1. Cominci con session_start().
    2. Controlli che $_SESSION["loggato"]==true, se non lo è ti incavoli...

    Ma una domanda anch'io...
    Come posso evitare che qualcuno mi sniffi la password e il nome utente?
    Ora ho messo che invece di inviare la password in chiaro ne invio l'MD5 e da server mi calcolo l'MD5... solo che se uno mi sniffa l'MD5 puo' autenticarsi lo stesso (seppur non scoprirà la password)... E' possibile o devo cercare qualcosa come SSL?

  4. #4
    Che differenza c'è tra usare le session ed un semplice cookie?

  5. #5
    [supersaibal]Originariamente inviato da Dariosky
    Quindi in login.php:
    1. Cominci con session_start().
    2. Ricevi nomeutente e password dal form e se questi sono validi regoli una variabile $_SESSION["loggato"]=true

    In tutti i file che hanno bisogno dell'autenticazione invece:
    1. Cominci con session_start().
    2. Controlli che $_SESSION["loggato"]==true, se non lo è ti incavoli...
    [/supersaibal]
    aspetta.. ma cm faccio a controllare nome e utente dal form stesso della pagina? xkè io d solito mettevo nell'action del form la pagina a cui accedere e in qll pagina facevo il controllo e l'eventuale incazzamento..

  6. #6
    [supersaibal]Originariamente inviato da Claudio Vituzzi
    Che differenza c'è tra usare le session ed un semplice cookie? [/supersaibal]
    Un semplice cookie affida la custodia dei dati al browser. Una sessione invia un id di riferimento ed i dati vengono memorizzati in un file o db lato server.

    Come dire il cokie normale ti manda il pacco a casa, quando ti serve rimandi il pacco indietro. la sessione ti manda una chiave ed il pacco lo tiene nella cassetta di sicurezza. Quando ti serve tu invii la chiave e la sessione tira fuori il pacco corrispondente.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    [supersaibal]Originariamente inviato da DragonFire
    aspetta.. ma cm faccio a controllare nome e utente dal form stesso della pagina? xkè io d solito mettevo nell'action del form la pagina a cui accedere e in qll pagina facevo il controllo e l'eventuale incazzamento.. [/supersaibal]
    la pagina la inizi con session_start e verifichi i dati se presenti.. ti metto giu' uno step "parlato":

    session_start();
    controllo se $_POST e' valorizzato con i parametri attesi
    IF(isset($_POST[user]) AND ecc...
    se mancasse un parametro oppure dei parametri non sono come quelli attesi rimando indietro.
    se e' valorizzato passo ad identificare lo user
    mysql_connect...ecc
    verifico...
    passo i dati in $_SESSION se tutto ok
    header location a pagina protetta.
    oppure do la segnalazione di errore
    fine if
    else cioe' NOn era valorizzato $_POST
    { ?>
    html
    e stampo il form
    il form rimanda a se stesso.
    method=post action = <?php echo $_SERVER['PHP_SELF'] ?>
    fine else

    Con il submit ora hai valorizzato POST e verra' avviata la procedura di riconoscimento che all'inizio era stata scartata.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  8. #8
    nn ho capito molto bene... qst sarebbe la pagina

    Codice PHP:

    <?
    include ("config.inc.php");
    include (
    "top_foot.inc.php");

    $db mysql_connect($db_host$db_user$db_password);
    if (
    $db == FALSE)
    die (
    "Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($db_name$db)
    or die (
    "Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

    top();
    ?>

    <form method=post action=index.php name="frm" onsubmit="return Controllo()";>
    <center>
        

    <big><big><big><big><font face="papyrus"> Inserisci Nick e Password </font></big> 
          </big></big></big></p>
        

    Nick:

          <input type=password size=40 name=nick>
          

        

        

          Password:

          <input type=password size=40 name=pass>
          

          

          <input type=submit value="Avanti" />
        </p>
        </center>
    </form>
    e poi controllo i dati nell'index.php

    Codice PHP:

    //--------------------     RICONOSCIMENTO UTENTE
    $query "SELECT pwd FROM biblio_admin WHERE nick='$nick'";
    $result mysql_query($query$db);
    $row mysql_fetch_array($result);
    $passinMD=md5($pass);
        if (
    $pass == "")
            {
                echo 
    "

    <big><big><big><center>Per accedere a questa pagina devi autenticarti</center></big></big></big>
    "
    ;
                echo 
    "
    <center><a href=\"login.php\"><big>Autenticati</big></a></center>"
    ;
                exit;
            }
        if (
    $passinMD != $row[pwd])
            {
                echo 
    "

    <big><big><big><center>Password Errata</center></big></big></big>
    "
    ;
                echo 
    "
    <center><a href=\"login.php\"><big>Riprova</big></a></center>"
    ;
                exit;
            } 

    Come dovrei modificarlo?

  9. #9
    Segui gli step che ti ho indicato...

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  10. #10
    se avessi capito nn avrei postato il codice...

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.