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

    Recupero di una variabile

    Ciao, ho uno script chiamato header.php che integra in ogni pagina del mio sito la sessione del login e mi visualizza il nome dell'utente se questo è loggato (es. "Benvenuto Riccardo"). Se non è loggato mi visualizza solo "Benvenuto".

    In una di queste pagine ho un form dal quale recupero i dati inseriti e li invio al db mysql. Fin qui nessun problema, se non che vorrei riuscire a recuperare anche il nome dell'utente (come nell'esempio Riccardo) e inviarlo allo stesso db.

    Nello script header.php che fa il print del nome utente è così:
    Codice PHP:
    <?php if(isset($_SESSION['utente'])) { echo "[b]Benvenuto ".$_SESSION['utente']."[/b]"; }else { echo "[b]Benvenuto[/b]"; } ?>
    In sostanza vorrei recuperare il valore di $_SESSION['utente'] (che se seguiamo l'esempio è Riccardo) e inviarlo al db. Ripeto che lo script header.php è integrato in ogni pagina. Per l'invio al db me la so cavare, il problema maggiore è il recupero del nome utente.

    Potete aiutarmi?

  2. #2
    Usare $_SESSION['utente'] che contiene il nome dell'utente è troppo complicato?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    in $_SESSION['utente'] il nome utente è quello dell'utente loggato; nel form login.php ho questo
    Codice PHP:
    $recuperadati mysql_query("SELECT * FROM utenti WHERE username = '$username' AND password = '$password'"); $verificadati mysql_num_rows($recuperadati); if($verificadati == 1) { $sessione mysql_fetch_array($recuperadati); $_SESSION['utente'] = $sessione['username']; 
    l'username lo prende direttamente dal db utenti e lo trasforma in $_SESSION['utente']

  4. #4
    Originariamente inviato da rikardinho90
    in $_SESSION['utente'] il nome utente è quello dell'utente loggato; nel form login.php ho questo
    Codice PHP:
    $recuperadati mysql_query("SELECT * FROM utenti WHERE username = '$username' AND password = '$password'"); $verificadati mysql_num_rows($recuperadati); if($verificadati == 1) { $sessione mysql_fetch_array($recuperadati); $_SESSION['utente'] = $sessione['username']; 
    l'username lo prende direttamente dal db utenti e lo trasforma in $_SESSION['utente']
    Questo lo avevo già capito!
    Ma se a questo punto hai il nome utente in sessione qual'è il problema che hai nel recuperarlo ed usarlo ovunque tu voglia?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    nelle stringhe di recupero dati scrivo
    Codice PHP:
    $utente mysql_real_escape_string($_POST['$_SESSION['utente']']); 
    e mi da errore di sintassi

  6. #6
    Originariamente inviato da rikardinho90
    nelle stringhe di recupero dati scrivo
    Codice PHP:
    $utente mysql_real_escape_string($_POST['$_SESSION['utente']']); 
    e mi da errore di sintassi
    E vabbè!

    Magari così va meglio:

    Codice PHP:
    $utente mysql_real_escape_string($_SESSION['utente']); 
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    ok ho risolto, probabilmente c'ero riuscito anche prima di aprire questa discussione ma non mi ero ricordato di aver iniziato una sessione con nome utente diverso e non tornavano i conti fra dati inseriti nel form e dati corrispondenti nel db. Grazie per il codice, l'ho inserito e funziona correttamente (non ho mai studiato il php e mi capita ogni tanto di fare qualche "errore di grammatica" )

    A presto!

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.