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

Discussione: Password e utenti

  1. #1

    Password e utenti

    Ciao a tutti....

    Sto impazzendo.... ho trovato 3000 script di login ma nessuno va bene.....

    Io devo fare un semplice login (basta solo la password)

    In base alla password scritta l'utente può accedere determinate pagine (tutte racchiuse in una cartella)....

    Non mi serve una registrazione o altro.... il gruppo utente è sempre lo stesso...

    Utilizzo anche un db quindi sono molto avantaggiato...

    Idee???

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    In tutte le pagine "protette" metti questo pezzo di codice
    Codice PHP:
    session_start();
    if(!isset(
    $_SESSION["autorizzato"]))
      
    header("Location: nonautorizzato.php"
    Che manderà alla pagina "nonautorizzato.php" l'utente che non ha ancora messo la password

    In una pagina a tua scelta (anche nonautorizzato.php) metti un form con la password da inviare
    Codice PHP:
    <form method="post" action="autorizza.php">
    <
    input type=password name="pass" value="">
    <
    input type="submit" name="invia" value="invia">
    </
    form
    E infine crei la pagina autorizza.php
    Codice PHP:
    if(!isset($_POST["pass"]))
      
    header("Location: nonautorizzato.php");
    $pass htmlentities($pass);
    if(
    $pass != "miapassword")
      
    header("Location: nonautorizzato.php");
    session_start();
    $_SESSION["autorizzato"] = true;
    header("Location: 'dovetipare.php'); 

    Ovviamente dovrai sostituire il controllo
    if($pass != "miapassword")

    Con qualcosa di tuo gusto, come il confronto con un valore del database, magari criptato con md5

  3. #3
    Grazie mille... adesso provo....

    Ho alcuni dubbi però....
    Codice PHP:
    session_start();
    if(!isset(
    $_SESSION["autorizzato"]))
      
    header("Location: nonautorizzato.php"
    dove lo metto ??? questo codice va bene solo su pagine php o anche html ??

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Attenzione... se una pagina è "html" puro, non puoi proteggerla (almeno non con php) poichè il php esegue SOLAMENTE le pagine con estensione ".php"
    Devi trasformare TUTTE le pagine protette in php e inserire ALL'INIZIO di queste pagine
    Codice PHP:
    <?php
    session_start
    ();
    if(!isset(
    $_SESSION["autorizzato"]))
      
    header("Location: nonautorizzato.php");
    ?>
    Lasciando anche totalmente invariato il resto del codice html presente nella pagina

  5. #5
    Grazie...

    Sto facendo autorizza.php

    Codice PHP:

    <?php

    /* Variabili precedenti */
    $user=$_POST['user'];
    $pass=$_POST['pass'];

     
    /* Connessione e selezione del database */

    $cn mysql_connect("localhost""xx""xxx")
    or die(
    "[b]Errore:[/b] Impossibile connettersi al Database mysql");

    mysql_select_db("xxx",$cn)
    or die(
    "[b]Errore:[/b] Impossibile accedere al Database Mysql");


    $query="SELECT * FROM utenti WHERE user='$user' AND pass='$pass' ";

    mysql_query($query,$cn)
    or die(
    "[b]Errore:[/b] Errore. Usare il tasto Indietro del Browser per reinserire l'user e password'");


    /* Controllo se si hanno le autorizzazioni necessarie */
    if(!isset($_POST["pass"]))
      
    header("Location: nonautorizzato.php");
    $pass htmlentities($pass);
    if(
    $pass != "miapassword")
      
    header("Location: nonautorizzato.php");
    session_start();
    $_SESSION["autorizzato"] = true;
    header("Location: 'index.htm');
    ?>
    Mi sono fermato in questo punto.... come faccio ???

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Sposti innanzitutto queste istruzioni all'inizio
    Codice PHP:
    if(!isset($_POST["pass"]))
      
    header("Location: nonautorizzato.php");
    $pass htmlentities($pass); 
    Sostituisci questa istruzione
    Codice PHP:
    mysql_query($query,$cn)
    or die(
    "[b]Errore:[/b] Errore. Usare il tasto Indietro del Browser per reinserire l'user e password'"); 
    Con questa
    Codice PHP:
    $queryresult mysql_query($query,$cn)
    or die(
    "[b]Errore:[/b] Errore. Usare il tasto Indietro del Browser per reinserire l'user e password'"); 
    Codice PHP:
    if($pass != "miapassword"
    Con quest'altra
    Codice PHP:
    if(mysql_num_rows($queryresult)<1

  7. #7
    non funziona.....

    Ecco tutto il codice:

    Codice PHP:

    <?php

    if(!isset($_POST["pass"]))
      
    header("Location: nonautorizzato.php");
    $pass htmlentities($pass);


    /* Variabili precedenti */
    $user=$_POST['user'];
    $pass=$_POST['pass'];

    /* Connessione e selezione del database */

    $cnmysql_connect("localhost""xxx""xxx")
    or die(
    "[b]Errore:[/b] Impossibile connettersi al Database mysql");

    mysql_select_db("xxx",$cn)
    or die(
    "[b]Errore:[/b] Impossibile accedere al Database Mysql");


    $query="SELECT * FROM utenti WHERE user='$user' AND pass='$pass' "


    $queryresult mysql_query($query,$cn)
    or die(
    "[b]Errore:[/b] Usare il tasto Indietro del Browser per reinserire l'user e password'");



    /* Controllo se si hanno le autorizzazioni necessarie */

    if(mysql_num_rows($queryresult)<1)
      
    header("Location: nonautorizzato.php");
    session_start();
    $_SESSION["autorizzato"] = true;
    header("Location: 'index.htm');
    ?>

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Non funziona è un po' poco per capire

    Cosa "non funziona"?
    Da errore?

    Sostituisci queste istruzioni
    Codice PHP:
    if(mysql_num_rows($queryresult)<1)
      
    header("Location: nonautorizzato.php");
    session_start();
    $_SESSION["autorizzato"] = true;
    header("Location: 'index.htm'); 
    Con
    Codice PHP:
    $row mysql_fetch_assoch($queryresult);
    print_r($row); 
    Così ti assicuri che il query abbia prodotto quello che ti serve
    Se non è così, devi verificare (con delle echo ai punti giusti) se le variabili sono settate come pensi

  9. #9
    Mi da pagina bianca.....

    Pagina nonautorizzato:

    Codice PHP:

    <!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>Utente non Registrato</title>




    <
    body>



                <
    p align="center">Se si dispone di tale autorizzazione immettere user e password</p>


    <
    form method="post" action="autorizza.php">

    <
    p width="340" align="center">[img]immagini/errore.jpg[/img]</p>

    <
    p align="center">User :<input typetext name="user" value=""
    Password :<input typetext name="pass" value=""> </p>

    <
    p align="center"> <input type="submit" name="invia" value="invia"> </p>

    </
    form>


    </
    body>
    </
    html
    pagina autorizza

    Codice PHP:
    <?php

    if(!isset($_POST["pass"]))
      
    header("Location: nonautorizzato.php");
    $pass htmlentities($pass);


    /* Variabili precedenti */
    $user=$_POST['user'];
    $pass=$_POST['pass'];

    /* Connessione e selezione del database */

    $cn mysql_connect("localhost""xxx""xx")
    or die(
    "[b]Errore:[/b] Impossibile connettersi al Database mysql");

    mysql_select_db("xxx",$cn)
    or die(
    "[b]Errore:[/b] Impossibile accedere al Database Mysql");


    $query="SELECT * FROM utenti WHERE user='$user' AND pass='$pass' "


    $queryresult mysql_query($query,$cn)
    or die(
    "[b]Errore:[/b] Usare il tasto Indietro del Browser per reinserire l'user e password'");



    /* Controllo se si hanno le autorizzazioni necessarie */

    $row mysql_fetch_assoch($queryresult);
    print_r($row);

    ?>

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Mmm... strano...

    Pagina bianca è proprio strano

    Al massimo mi sarei aspettato che ti rimandasse a "nonautorizzato.php"

    L'errore è probabilmente nel query
    Prova a fare una echo del'SQL prima di mysql_query, copialo e incollalo su phpmyadmin e provalo direttamente, vedi che dice

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.