Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    13

    Session start oppure cookies

    ciao a tt, sn nuovo, e stò creando una board in php, ho quasi finito, se non fosse che mi manca uno script in php x il login. Io di solito utilizzo questo script x il login:
    Pagina del form:
    Codice PHP:
    <form method="post" action="admin.php">


    Username: <input type="text" name="username" size="20">

    Password: <input type="text" name="password" size="20">

    <
    input type="submit" value="Login">
    </
    form
    admin.php:
    Codice PHP:
    <?php
    //controllo dati di accesso e verifico che sono uguali a quelli inseriti nella pagina configurazione.php
      
    include 'configurazione.php'
      
    $username=$_POST['username']; 
      
    $password=$_POST['password']; 
    //Se il login è stato eseguito con successo visualizza pagina
      
    if ($username==$usern && $password==$passd) {
    ?>
    TESTO DELLA PAGINA SE IL LOGIN E' ESATTO
    <?php
    //Se il login è sbagliato vai all'homepage
        
    }else{
    header ("Location: index.php");
        }
          
    ?>
    configurazione.php:
    Codice PHP:
    <?php
    //Username
       
    $usern='admin';
    //Password
       
    $passd='admin';
    ?>
    Fin quì tutto ok, ma adesso avrei l'esigenza di fare che senza effettuare sempre il login si scrive un cookie o ancora meglio una sessione, tramite la quale si ricorda l'user e la pass inserita e in una pagina come:
    post.php:
    Codice PHP:
    <?php
    //controllo dati di accesso e verifico che sono uguali a quelli inseriti nella pagina configurazione.php
      
    include 'configurazione.php'
      
    $username=$_POST['username']; 
      
    $password=$_POST['password']; 
    //Se il login è stato eseguito con successo visualizza pagina
      
    if ($username==$usern && $password==$passd) {
    ?>
    TESTO DELLA PAGINA SE IL LOGIN E' ESATTO
    <?php
    //Se il login è sbagliato vai all'homepage
        
    }else{
    header ("Location: index.php");
        }
          
    ?>
    controlla direttamente dalla sessione o dal cookie senza chiedere il login...qlc1 mi può dare una mano? Grazie mille...ciaoo
    .

  2. #2
    allora ti consiglio di usare le sessioni che sono + sicure...devi fare in questo modo:
    pagina del form:
    Codice PHP:
    <form method="post" action="login.php">


    Username: <input type="text" name="username" size="20">

    Password: <input type="text" name="password" size="20">

    <
    input type="submit" value="Login">
    </
    form
    login.php:
    Codice PHP:
    <?php
    session_start
    ();
      include 
    'configurazione.php';
      
    $username=$_POST['username'];
      
    $password=$_POST['password'];
    //Se il login è stato eseguito con successo visualizza pagina
      
    if ($username==$usern && $password==$passd) {
    $_SESSION['username']=$username;
    $_SESSION['pasword']=$password;
    header ("Location: index.php");// dopo effettuato il login lo reindirizzi alla index
    }else{
    echo 
    "Errore User o Pass";
    }
    ?>
    poi in tutte le pagine devono iniziare con session_start();

    la pagina admin o post cambierebbero così
    Codice PHP:
    <?php
    if (isset($_SESSION['username']) AND isset($_SESSION['password'])) se le variabili della sessioni esistono significa che è stato effettuato il login in precedenza e che è andato a buon fine
     
    {
    ?>
    TESTO DELLA PAGINA SE IL LOGIN E' ESATTO
    <?php
    //Se il login è sbagliato vai all'homepage
        
    }else{
    header ("Location: index.php");
        }
          
    ?>
    spero che sia tutto chiaro...per dubbi continua a postare...

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    13
    mh...nn mi è chiara una cosa, ho provato ma nn và! ho solo copiato ed incollato i tuoi codici...dov'è che devo modificare? grazie ancora e ciao
    .

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    13
    ah, la pagina admin o post deve star scritto session_start(); e poi il codice che mi hai messo tu ?
    cioè admin.php deve essere:
    Codice PHP:
    <?php
    session_start
    ();
    if (isset(
    $_SESSION['username']) AND isset($_SESSION['password'])) se le variabili della sessioni esistono significa che è stato effettuato il login in precedenza e che è andato a buon fine 

    ?> 
    TESTO DELLA PAGINA SE IL LOGIN E' ESATTO 
    <?php 
    //Se il login è sbagliato vai all'homepage 
        
    }else{ 
    header ("Location: index.php"); 
        } 
          
    ?>
    ???grazie ancora e ciaoo
    .

  5. #5

  6. #6
    Utente di HTML.it L'avatar di torrone
    Registrato dal
    Apr 2006
    residenza
    Padova
    Messaggi
    1,128
    Originariamente inviato da torrone
    mancano gli \\ nella descrizione di quello che ha fatto, così dovrebbe andare

    Codice PHP:
    <?php
    if (isset($_SESSION['username']) AND isset($_SESSION['password'])) //se le variabili della sessioni esistono significa che è stato effettuato il login in precedenza e che è andato a buon fine
    {
    ?>
    TESTO DELLA PAGINA SE IL LOGIN E' ESATTO
    <?php
    //Se il login è sbagliato vai all'homepage
        
    }else{
    header ("Location: index.php");
        }
          
    ?>

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    13
    si, l'ho notato, ma cmq nn và...
    .

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    13
    nella pag admin.php mi visualizza il testo di errore e non quello che dovrebbe, e poi nella pagina login, se inserisco user e pass sbagliati nn mi dà l'errore...help me please and bye bye!
    .

  9. #9
    in ogni pagina al suo inizio deve stare session_start(); in modo che la sessione nn si perda e neanche le sue variabili quindi si nella pagina admine post va all'inizio session_start();

  10. #10
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    13
    mh..nn và cmq! posto il codice:
    login.php
    Codice PHP:
    <?php
    session_start
    ();
    ?>
    <form method="post" action="log.php"> 


    Username: <input type="text" name="username" size="20"> 

    Password: <input type="text" name="password" size="20"> 

    <input type="submit" value="Login"> 
    </form>
    [url="admin.php"]ADMIN[/url]
    log.php
    Codice PHP:
    <?php 
    session_start
    (); 
      include 
    'configurazione.php'
      
    $username=$_POST['username']; 
      
    $password=$_POST['password']; 
      if (
    $username==$username && $password==$password) { 
    $_SESSION['username']=$username
    $_SESSION['pasword']=$password
    header ("Location: login.php");
    }else{ 
    echo 
    "Errore User o Pass"

    ?>
    configurazione.php
    Codice PHP:
    <?php
    $username
    ='admin';
    $password='admin';
    ?>
    admin.php
    Codice PHP:
    <?php 
    session_start
    ();
    if (isset(
    $_SESSION['username']) AND isset($_SESSION['password']))

    ?>
    TESTO DELLA PAGINA SE IL LOGIN E' ESATTO 
    <?php 
    //Se il login è sbagliato vai all'homepage 
        
    }else{ 
    echo 
    "eror";
        } 
          
    ?>
    sia il login normale che la pag admin nn mi và...cioè se inserisco user e pass errate nn mi dà l'errore mentre se vado alla pag admin mi dà errore anke se effettuo il login...grazie ancora e 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.