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

    Area Riservata Script Problema

    Ciao a tutti.
    Sto usando lo script di HTML.it Area Riservata.
    http://php.html.it/script/vedi/2107/area-risevata/

    Tale script è formato dai seguenti files:
    -login.php (dove sta il form per il login)
    -utenti.php (dove sono raccolte le password degli utenti)
    -area_riservata.php (file che devo includere per ogni area riservata)
    -error.htm (la pagina di errore di default)

    Il file README dice testualmente "I file login.php e utenti.php DEVONO stare nella stessa directory, inoltre i file area_riservata.php e error.htm devono trovarsi nella stessa directory delle vostre pagine riservate. Se le pagine riservate sono organizzate in più directory, copiate questi due file in ogni directory che contiene pagine riservate."

    Quindi se ho una struttura dei file sul server web di questo tipo:

    +
    |__index.htm
    |__login.php
    |__utenti.php
    +__utenti
    ......|__utente1
    ...........|__home_utente1.htm
    ...........|__area_riservata.php
    ...........|__error.htm

    Insomma i file login.php e utenti.php nella directory principale e i file area riservata.php ed error.htm nelle directory dei rispettivi utenti sussistono problemi.
    Mi spiego: Se metto tutti i file dello script in una directory del server ed aggiungo un utente nel file utenti.php in effetti me lo fa loggare, ma mi reindizza sempre nella pagina di default.
    Io invece voglio che ogni utente abbia una sua pagina personale di login.
    Come dovrei fare?

    Poi ci sarebbero anche altri problemi come quello di nn rendere pubblico il file utenti.php per ovvie ragioni di sicurezza, ma per ora voglio concentrarmi sul problema di reinderizzare ogni utente nella sua pagina personale.

    Grazie a tutti dell'eventuale collaborazione.

    Allego anche i codici dei file più importanti del suddetto script.

    file login.php
    Codice PHP:
    <?
    session_start
    ();  
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Login</title>

    </head>

    <body>
    <?
    function check($user,$password){
            include(
    "utenti.php");

            foreach(
    $utenti as $user_ => $password_){
                if ((
    $user==$user_) AND ($password==$password_)) {
                    return 
    true;
                }
            }

            return 
    false;
    }

    function 
    form_login(){
    ?>
    <form id="login" action="<?=$PHP_SELF?>" method="post">
    <div style="text-align:center;margin-left:auto;margin-right:auto;">
        Utente:

        <input type="text" name="utente" size="20" maxlength="255">

        Password:

        <input type="password" name="password" size="20" maxlength="255">


        <input type="submit" value="   OK   ">
    </div>
    </form>
    <? }

    if(isset(
    $_POST["utente"])){
        if (
    check($_POST["utente"],$_POST["password"])){
            
    $_SESSION["utente"] = $_POST["utente"];
            
    $_SESSION["password"] = $_POST["password"];
            echo 
    "ora sei loggato!";
        }else{
            
    form_login();
        }
    }else{
        
    form_login();
    }        
    ?>

    </body>
    </html>
    fileutenti.php
    Codice PHP:
    <?
    /* 
    Per aggiungere un nuovo utente scrivere:
        $utenti["nome_utente"] = "password";
    Ad esempio, se si vuole aggiungere l'utente mario con password rossi, scrivere:
        $utenti["mario"] = "rossi";
    */

    $utenti["admin"] = "admin";
    $utenti["user1"] = "pwd1";


    ?>
    file area_riservata.php
    PS:
    Per rendere una pagina privata, dovete aggiungere all'inizio di questa la seguente stringa:

    <? include("area_riservata.php"); ?>

    Codice PHP:
    <?
    session_start
    ();

    if(!isset(
    $_SESSION["utente"])){
        include(
    "error.htm");
        die();
    }

    ?>

  2. #2

    Soluzione parziale

    Ho scaricato un altro script che sembra funzinare meglio.
    Però ho un problemino anche là.
    Se metto la pagina in cui voglio andare su

    header("Location: http://www.miosito.com/utenti/user1.php");

    Ci va'. Solo che io vorrei che andasse nella pagina personalizzata di ogni utente!
    Ora, siccome il nome utente, il file PHP dell'home dell'utente e la variabile $datauser coincidono io vorrei mettere dove sta location tutto così ome ta nell'esempio, ma cambiare user1 con il contenuto della variabile $datauser (ovvero il nome utente) seguito dall'estesione .php (ovvero la pagina web associata al nome utente).

    Immagino sia una cosa semplice...ma come si fa'?
    Cmq creerò un altro tread siccome l'argomento di discussione è cambiato (ho preferito però interrompere sto tread per nn farvi scervellare con quello script che oramai nn mi serve + )

    :master:

    Grazie

  3. #3
    Utente di HTML.it L'avatar di buba88
    Registrato dal
    Feb 2004
    Messaggi
    538
    ciao! io sono l autore del primo script
    lo script da me creato non prevede una pagina personale per ogni utente.
    Il mio obbiettivo era quello di creare uno script il più semplice possibile!
    Inoltre per il file utenti.php non ci sono problemi, in quanto essendo .php il suo contenuto non può essere letto dal browser!

    ciao ciao

  4. #4
    Ciao,
    beh che fortuna ho beccato proprio l'autore
    Beh il tuo script funzionava bene (ne avevo provati vari e ti assicuro che era il + semplice e funzionale)...solo che io volevo un' altra cosa mi sa.
    Cmq ho trovato un altro semplice script che fa bene il suo lavoro.
    Beh in effetti io avevo paura che sulla sicurezza del db ma in effetti ho notato che il browser nn legge il db in formato php.
    Ad ogni modo vorrei settare dei permessi (quali mi consigli? Ovviamente l'amministratore deve everli tutti, ma con gli altri come mi comporto per farlo funzionare bene?), renderlo inaccessibile via pannello di controllo del mio host e...magari criptarlo!

    Insomma se mi devono rovinare il sito almeno un pò voglio che si impegnino hihihih


  5. #5

    Problema con lo script

    utilizzo lo script area riservata per diverse sezioni del mio sito, alle quali possono avere accesso persone diverse.
    Modificando l'indirizzo di locazione dei file area riservata, error, è login e utenti sono riuscito a creare solo due punti di accesso alle aree riservate.
    Il problema che mi trovo ad affrontare è che se un utente effettua il log in nella sua area riservata, ottiene l'accesso anche alle altre aree. Non so se il problema è esposto in modo chiaro, penso che sia dovuto al fatto che lo script tiene memoria nei cookie dell'autenticazione per tenere attiva la connessione, se infatti chiudo e riapro il browser, user e password vengono chieste di nuovo.
    Poichè non ho molta esperienza di php, volevo sapere se e come era risolvibile questo inconveniente, confermando quanto detto in precedenza che lo script funziona veramente bene!!

    Grazie Carlo

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.