Visualizzazione risultati 1 fino 11 di 11

Discussione: [php] Problema chiusura sessioni [era: session_problem()]

  1. #1
    Guest

    Question [php] Problema chiusura sessioni [era: session_problem()]

    ciao ragazzi rieccomi con un altra lacuna da colmare sto facendo delle prove col mio sito prima di presentarlo però ho notato una cosa:
    mi sono iscritto con vari nick per vedere alcune differenze, però dopo il login col primo nick sono tornato al punto di partenza e ho fatto login con un altri nick da me registrati! risultato? sono tornato online con lo stesso nick iniziale anche se in alcuni punti ho usato la funzione session_destroy()....
    premetto che ad ogni inizio pagina uso:
    Codice PHP:
    <? session_start();
    $nick = $_SESSION['login'];
    if(isset(
    $nick)){
    //funzioni della pagina;
    } else {
    //si ritorna alla pagina di login;
    }
    ?>
    c è qualcosaltro da sapere sulle sessioni?
    Ultima modifica di dreadnaut : 30-03-2011 alle ore 00.12.29

  2. #2
    Guest

    Predefinito

    Citazione Originalmente inviato da Sharefiles Visualizza messaggio
    c è qualcosaltro da sapere sulle sessioni????
    Anzitutto si dovrebbe verificare il funzionamento del login... cioè in che modo vengono inizializzate le variabili di sessione legate al login.

  3. #3
    Guest

    Predefinito

    ciao miniscript la lista utenti ce lho memorizzata su database MySql e in pratica dopo il riconoscimento utlizzo il $_POST['login'] per iniziare le sessioni con
    Codice PHP:
    session_start();
    $nick = $POST['login'];
    $_SESSION['login'] = "$nick";
    secondo te è qui che nasce il problema?? :(

  4. #4
    Guest

    Predefinito

    dalle pochissime righe di codice postato non si può darti una risposta...
    in generale siccome utilizzi i cookie (... stacci attento...) in caso di login positivo resetta i cookie eventualmente esistenti e ri-creali nuovi.

    Inoltre assicurati di non inviare alcun output prima della chiamata di set_cookie

    Infine imposta un error_reporting severo così da tener traccia di ciò che succede.

    Poi ti ripeto... senza codice nn si può dire dove sta il problema

  5. #5
    Guest

    Predefinito

    ?? ma non ho usato nessun cookie nello script di login!!! l ecco questo è lo script che sto usando
    Codice PHP:
    $nick=$_POST["nick"]; $pass=$_POST["password"];
    include(
    "connect.php"); if(isset($nick)){
    $reg=" SELECT * FROM utenti WHERE nick='$nick' AND pass='$pass' ";
    $result=mysql_query($reg) or die("operazione fallita");
    $num=mysql_num_rows($result);
    if(
    $num < 1){
    echo
    "login fallito riprova<br><br>";} else { session_start();
    $_SESSION['nick']="$nick";
    die(include(
    "listachat.php"));} }
    mysql_close($connex);
    ?><br/><form method="post" action="login.php">
    nickname:<input type="text" name="nick"/><br/>
    password:<input type="password" name="password"/><br/>
    <input type="submit" value="INVIA"/></form><br/>
    Ultima modifica di Sharefiles : 29-03-2011 alle ore 21.39.55

  6. #6
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,686

    Predefinito

    Anche se teoricamente va bene in quel modo, il session_start() mettila all'inizio: non si sa mai!.

    Per i cookie, sappi che le sessioni lavorano tramite cookie: salvano il SID in un cookie (lato client), e con quello identificano i dati corrispondenti salvati su server.

    Ciao!

  7. #7
    Guest

    Predefinito

    quindi se tanto mi dà tanto manca il session_destroy()? in effetti non l ho inserito ancora xkè mi è sorto un dilemma!!! finquando la sessione è attiva (cioè l utente è sulla pagina) la funzione può essere eseguita xkè viene visualizzata la pagina ....ma se la sessione è disattiva (cioè l utente è offline o ha lasciato il sito) come faccio a far eseguire questa funzione??? :(

  8. #8
    Guest

    Predefinito

    Codice PHP:
    echo 'la durata della sessione in questo hosting è di '.session_cache_expire().' minuti';
    // oppure
    echo 'la durata della sessione in questo hosting è di '.ini_get("session.gc_maxlifetime").' secondi';
    Ultima modifica di miniscript : 30-03-2011 alle ore 22.58.55

  9. #9
    Guest

    Predefinito

    scusa non collego!!! le sessioni si disattivano da sole superate questo termine?? se si non dovrei avere il problema che ho citato ad inizio post!!!:( cè un tutorial per capire meglio?????
    Ultima modifica di Sharefiles : 31-03-2011 alle ore 21.46.14

  10. #10
    Guest

    Predefinito

    sharefile non usare mai l'abbreviazione.... usa sempre i tag completi
    <?php

    ?>

  11. #11
    Guest

    Predefinito

    ok ci starò più attento :)

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •