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

    aiuto creazione sessione

    salve!
    sto creando un sito e dovrei costruire un'area privata, in modo che solo gli utenti iscritti possano effettuare le operazioni nel sito.

    ho provato a costruire già questo, ma non da alcun risultato.

    quindi avrei bisogno di sapere in primo luogo il funzionamento delle sezioni. ho provato a cercare, ma o gli articoli sono troppo tecnici, o parlano di cose che non mi interessano, non ho ben capito la struttura e come funzionano le sezioni. prima vorrei capire questo, poi quando capirò come funzionano dal lato teorico, potrò riprovare a costruire le sezioni ad accesso limitato.

    graze in anticipo a tutti coloro che mi potranno e vorranno aiutare.

    grazie!

  2. #2
    Utente di HTML.it L'avatar di mark2x
    Registrato dal
    Nov 2005
    Messaggi
    1,940
    ... magari prima dovresti sapere che si chiamano SESSIONI...

    [.:: JaguarXF ::.]
    __________________

  3. #3
    Utente di HTML.it L'avatar di iox84
    Registrato dal
    May 2004
    Messaggi
    754
    Puoi comminciare da qui, poi posta pure i tuoi dubbi

    http://it.php.net/manual/it/reserved...iables.session
    La fortuna e' cieca ma la sfiga ci vede benissimo
    Comprarselo o farselo di legno

  4. #4
    prova a spiegartelo in parole molto semplici:
    ipotizziamo 2 pagine protette.
    il passaggio da una pagina .php ad un'altra avviene con la perdita delle informazioni dalla prima pagina alla seconda. Quindi se vuoi gestire una area riservata devi far in modo che da una pagina all'altra il webserver sappia che sia sempre lo stesso utente che ha effettuato la richiesta della seconda pagina. Quindi si riccorre alle sessioni che immagazzinano delle variabili seu server indipendentemente dalla pagina che stai visualizzando. Quando sei nella seconda pagina puoi richiedere di controllare le variabili che hai precedentemente messo in sessione e quindi sapere se l'utente che ha richiesto di visualizzare la pagina protetta corrisponde con quelle informazioni che ti sarai salvato in sessione precedentemente, altrimenti la richiesta di questa seconda pagina dovra' terminare.

    Es.

    pagina1.php ---> contiene un form che richiede id e pass. il form punta alla pagina2.php col metodo POST

    pagina2.php ---> effettui i controlli sulle variabili del form che troverai nell'array $_POST. Se l'autenticazione va a buon fine allora inizi una sessione. A questo punto, come esempio, potresti conservarti il valore dell'id nelle variabili di sessione. Esempio: $_SESSION["id_loggato"]=$_POST["id"]; Dopodiche' puoi puntare ad una pagina3.php di benvenuto.

    pagina3.php ---> la prima cosa da fare e' riaprire la sessione e controllare l'esistenza del valore di sessione precedentemente archiviato. Se questa procedura non va a buon fine significa che qualcuno vuole arrivare alla pagina3.php senza passare per l'autenticazione(pagina2.php). Ricordati che dovra' esistere una pagina per il logout che distruggera' tutte le variabili di sessione. Comunque queste si perderanno anche se la finestra del browser sara' chiusa.

    Ciao.
    ______________________________________

    Progresso Web.

  5. #5
    Utente di HTML.it L'avatar di mark2x
    Registrato dal
    Nov 2005
    Messaggi
    1,940

    [.:: JaguarXF ::.]
    __________________

  6. #6
    allora...ho letto qualche articolo e con l'aiuto di codici già esistenti, ho provato a modifcare il codice per le mie esigenze....solo che non è perfetto.....ad esempio anche se settato mi da errore al punto $inputuser=$_POST['username'];
    $inputpassword=$_POST['password'];.....solo che ora non so più dove mettere le mani per evitare anche questo.....
    in ogni caso...provate a controllare il codice che ho mezzo fatto e datemi consigli sulla sua qualità e consigli sulle modifiche da apportare per essere ancora migliore.....ringrazio anticipatamente tutti coloro che mi aiuteranno.....


    grazie!!!!!!!!

    codice:
    <?
    $sid = session_id(); // Ottiene l'id sessione
    if(!isset($_SESSION['log'])) { //Controlla se l'utente è già settato
    print("
    <form name='log' action='index.php' method='POST'>
    <input type='text' name='username'>
    <input type='password' name='password'>
    <input name='Invia' type='submit' value='Submit'>
    <input type='hidden' name='PHPSESSID' value='$sid'>
    </form>");
    } else {
    $inputuser=$_POST['username'];
    $inputpassword=$_POST['password'];
    //echo "Esci[b] "; // Link alla pagina di logout
    echo "Sei loggato come $_SESSION[log]"; // Contenuto dell'array
    }
    $errore=1;
    $login="SELECT * FROM users";
    $login = mysql_query($login);
    while ($valori = mysql_fetch_array($login))
      {
        $user = $row['Username'];
        $password = $row['Password'];
        $iduser = $row['IDUser'];
        $iduserdb = "SELECT IDUser FROM users";
        if ($iduser == $inputuser AND $password == $inputpassword) { // Effettua l'autenticazione
          $errore=0;
        }
      }
    if($errore==1) {
    $_SESSION['log'] = $sid;
    echo "Login effettuato!";
    $log = "INSERT INTO sessioni VALUES ('$sid', '$iduser', NOW())"; 
    } else {
    die("Login errato!");
    }
    ?>

  7. #7
    allora....un problema principale è che non entra nel database....probabilmente ho sbagliato qualcosa.....quando cerco di accedere non entro....

    mi da errore nelle variabili $inputuser e $inputpassword....probabilmente ho sbagliato la sintassi di ricezione dei vaolri, ma non riesco a risolverlo da solo....chi mi aiuta?

    grazie!

  8. #8
    se non sbaglio dovrebbe mancare la connessione al db.
    ______________________________________

    Progresso Web.

  9. #9
    forse sbaglio, ma se la connessione al db è già presente nella pagina non dovrebbe funzionare?

  10. #10
    comunque considerando che la connessione ci sia....ora non sono nel mio pc e quindi non posso controllare

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 © 2024 vBulletin Solutions, Inc. All rights reserved.