visualizzare nome utente loggato

onebill964

Utente Attivo
21 Giu 2009
46
0
0
venezia
salve a tutti,ho il seguente script registrazione utenti
PHP:
<?php
session_start();

// controllo sul parametro d'invio
if( isset($_POST['submit']) && (trim($_POST['submit']) == "Login") )
{ 
  // controllo sul formato dell'email............
  ...........
    // se i parametri sono in formato corretto interroghiamo il database
    $email = $_POST['email'];
    $password = $_POST['password'];

    // includiamo il file di configurazione
    @include "config.php";

    // controlliamo se i parametri sono presenti in tabella
    $ctrl_login = @mysql_query("SELECT id FROM iscrizioni WHERE email='$email' AND password='$password'") or die (mysql_error());
    if(@mysql_num_rows($ctrl_login)>0)
    {
      // esito login negativo
      echo "Login incorretto";
    }else{
      // esito login positivo 
      $obj = @mysql_fetch_object($ctrl_login) or die (mysql_error());

      // creiamo un id di sessione corrispondente all'utente
      $_SESSION['id'] = $obj->id;

      // redirect alla pagina degli iscritti
    
	  	  echo "<meta http-equiv='Refresh' content='0; URL=iscritti.php'>"; 

    }
  } 
}else{
  // form per la conferma
  ?>......
questa la pagina Iscritti.php
PHP:
<?php
session_start();

// controlliamo se è stata inizializzata la sessione
if(isset($_SESSION['id']))
{
  //controllo id con esito positivo
  echo "Benvenuto! nell'area riservata!";
}else{
  //controllo sessione con esito negativo
  @header("Location: form_login.php");
}
?>
contenuti area riservata........
Mi piacerebbe che accanto alla frase di benvenuto nell'area protetta apparisse il nome dell'utente loggato qualcuno sa dirmi come devo fare per recuperare dal db il nome inserito in fase di registrazione per poi stamparlo a video?
grazie
 

minatore

Utente Attivo
25 Set 2007
410
0
0
Ciao
Prova cosi
echo("Benvenuto nella Homepage....<BR>-- Ti sei loggato come utente <B>".$_SESSION['id']."</B> --"); ?>
 
Ultima modifica:

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
23
Roma
alessandro1997.netsons.org
Ciao, puoi usare una query SQL, impostando come criterio di ricerca l'ID dell'utente salvato in una sessione. In questo modo non avrai bisogno neanche di impostare sessioni aggiuntive.

Ti basterà cambiare il codice di iscritti.php e prima del messaggio eseguire una query per recuperare il campo name, o come si chiama quello che ti interessa. Il codice sarà simile a questo:
Codice:
SELECT name FROM iscritti WHERE id='{$_SESSION['id']}'

Spero di essere stato abbastanza comprensibile!
 

onebill964

Utente Attivo
21 Giu 2009
46
0
0
venezia
Visualizzare nome utente

Ciao grazie per le risposte ho provato come suggerito da Minatore ma mi restituisce pagina bianca.
Ho inserito nella pagina protetta con l'include la connessione al database ed ho provato a fare la query la pagina protetta la visualizzo ma non il nome utente dove sbaglio???:hammer:
Grazie,grazie,grazie...
PHP:
	session_start();
@include "config.php";
$nome = @mysql_query("SELECT nome FROM iscritti WHERE id='{$_SESSION['id']}'");
if(isset($_SESSION['id']))
{
  //controllo id con esito positivo
  echo "<font color=#990000><strong>Welcome inside your Reserved Area! .$nome</strong></font>";
}else{
  //controllo sessione con esito negativo
  @header("Location: registrazione.php");
}
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
ho notato che prima fay una query utilizzando il valore di sessione, poi controlli che lo stesso valore esista:
PHP:
$nome = @mysql_query("SELECT nome FROM iscritti WHERE id='{$_SESSION['id']}'");
if(isset($_SESSION['id']))//etc.
dovrebbe essere il contrario.
Togli quelle @ sennò non vedi gli errori
 

onebill964

Utente Attivo
21 Giu 2009
46
0
0
venezia
visualizzare nome utente

Ciao ho provato come mi hai suggerito ma mi restituisce pagina bianca ,non è che utilizzando una classe per la connessione al db la query debba essere impostata in maniera diversa?magari ho detto una stupidaggine ...:confused:
grazie cmq
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
23
Roma
alessandro1997.netsons.org
Per prima cosa se utilizzi una classe non puoi usare la funzione mysql_query, ma devi usare il metodo della classe. E comunque quello restituito dalla query è solo un ID, devi processarlo con mysql_fetch_assoc prima di procedere. Ti consiglio di leggerti una buona guida a mysqli.
 

onebill964

Utente Attivo
21 Giu 2009
46
0
0
venezia
visualizzare nome utente

ciao,immaginavo cmq grazie
p.s se qualcuno conosce una buona guida online ringrazio:byebye:
 

angeloulivieri

Utente Attivo
8 Set 2009
71
0
0
Devi usare le funzioni di sql. Il ritorno di sql_query dovrebbe essere un array contenente i vari campi e dunque anche quelli che ti servono. Dopodiché usi le variabili di sessione per registrarli da lì tipo:

$SESSION[name]= queryResult[1] ...

e poi usi la variabile di sessione per scrivere il nome nell'altra pagina.
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
23
Roma
alessandro1997.netsons.org
Ti ricordo che non c'è bisogno di creare più sessioni per memorizzare un array. Puoi sempre usare la funzione serialize per trasformare qualsiasi tipo di dati in stringa e la funzione unserialize per fare viceversa. Ecco un esempio.

Ammettiamo di avere pagina1.php dove creiamo una sessione contenente un array. Si può fare così:
PHP:
<?php
session_start();

$data = array('nome' => 'Valore', 'nome2' => 'Valore2');
$_SESSION['data'] = serialize($data);
?>

E di avere poi pagina2.php in cui leggere i relativi dati. Ecco come fare:
PHP:
<?php
session_start();
$data = unserialize($_SESSION['data']);

print_r($data);
?>

Quindi in $data avremo di nuovo il nostro array pronto per l'uso. Come se lo avessimo normalmente definito. Queste due funzioni sono molto utili perché ti consentono di memorizzare ogni tipo di informazioni in "recipienti" che potrebbero contenere solo una stringa.
 

onebill964

Utente Attivo
21 Giu 2009
46
0
0
venezia
visualizzare nome utente

Salve a tutti,vi ringrazio molto per l'aiuto devo ammettere che sono un po' disorientato :confused:sono agli inizi con php (e si vede...forse dovrei fare qualche passo indietro) pero' dal momento che lo script per la registrazione utenti,al quale ho apportato parecchie modifiche,per adattarlo ai miei scopi funziona a dovere, credevo sinceramente fosse piu' semplice del previsto una volta raggiunta la pagina riservata stampare a video il nome dell'utente loggato_Ora mi rileggo per bene le vostre risposte e la guida suggerita Grazie ancora
 

onebill964

Utente Attivo
21 Giu 2009
46
0
0
venezia
visualizzare nome utente loggato-RISOLTO-

Salve ragazzi dopo parecchi tentativi ho risolto cosi:
PHP:
	session_start();
	 // controlliamo se è stata inizializzata la sessione
if(isset($_SESSION['id']))  
@include "config.php";
$ctrl_nome = @mysql_query("SELECT nome FROM iscrizioni WHERE id='{$_SESSION['id']}'"); 
      if($ctrl_obj = @mysql_fetch_object($ctrl_nome) or die (mysql_error()))
{
  echo "Welcome ".$ctrl_obj->nome."";
}else{....login...
Ciao e grazie a tutti
 
Discussioni simili
Autore Titolo Forum Risposte Data
A Visualizzare nome utente dopo il login Classic ASP 3
G VIsualizzare il nome utente dopo il login Classic ASP 5
F visualizzare dati utente in base a nome e password PHP 6
K [ASP] Visualizzare nome del file selezionato Classic ASP 3
M visualizzare dati in tabella presi da un database e ordinarli per argomento e nome PHP 7
felino Errore nel visualizzare il nome del mese PHP 2
D htaccess: come riscrivere un link o non visualizzare il nome del file php della pagina su cui siamo? Apache 3
N Non Autorizzato. Dovresti rimuovere il parametro customize_messenger_channel per visualizzare l'anteprima in frontend. WordPress 1
M visualizzare ip cam in windows IP Cam e Videosorveglianza 0
W visualizzare solo file html e sottocartelle di una cartella PHP 1
napuleone visualizzare il codice senza usare gli & HTML e CSS 0
Y Come caricare e visualizzare un'immagine PHP 0
M Visualizzare file PDF con link preso dal DB PHP 0
Alex_70 Visualizzare 2 bandiere PHP 6
Alex_70 Visualizzare anteprima foto in dropdown PHP 2
L Visualizzare tabella all'interno finestra modal PHP 4
P Visual Studio VB.NET Visualizzare un messaggio alla scadenza. .NET Framework 0
J [PHP] Visualizzare risultato query stessa pagina PHP 3
B visualizzare una sola riga Database 3
Alex_70 [PHP] Visualizzare foto tramite select PHP 0
M [PHP] Visualizzare un array partendo dal numero 1 e non 0 PHP 5
L [PHP] Visualizzare utente dopo login PHP 0
L [PHP] Visualizzare se una pagina è pingata PHP 1
M [PHP] Visualizzare nell'alert il calcolo PHP 4
D [WordPress] come fare per estrarre dati da un db MySQL tramite una form e visualizzare il risultato WordPress 0
L come visualizzare array di oggetti php PHP 9
S [PHP] visualizzare commento su un prodotto precedentemente selezionato PHP 2
V [Javascript] Visualizzare o nascondere div figlio Javascript 4
W [PHP] Visualizzare errori su Statements in MySQLi PHP 3
S [javascript] visualizzare/nascondere div Javascript 3
felino [Javascript] [jQuery] Slick Carousel: visualizzare una porzione dell'immagine successiva Javascript 0
W [Javascript] Visualizzare l'href di un link nascosto Javascript 0
L [HTML] Problemi a visualizzare le modifiche eseguite alle pagine del sito. HTML e CSS 2
G [HTML] Visualizzare iframe in un blog non funziona sempre xchė? HTML e CSS 3
tritabit [HTML] Visualizzare stelle tipo rating HTML e CSS 5
A Visualizzare div quando le immagini sono state uploadate con successo (Ajax) Ajax 0
T Visualizzare un Xml su un sito in modo semplice XML 1
F Visualizzare data in formato gg/mm/aaaa da database mysql. PHP 3
M [PHP] Visualizzare record nel db PHP 2
M Visualizzare immagini in PHP - MYSQL PHP 0
M Visualizzare immagini da DB in php PHP 0
ecosito [WordPress] Visualizzare una mappa con i pin dei post tramite GPS? WordPress 4
G [PHP] CodeIgniter - Visualizzare singolo risultato PHP 4
Y VISUALIZZARE IMMAGINI DA DB PHP/MYSQL PHP 7
trattorino [PHP] funzione per visualizzare solo carattere PHP 2
S [HTML] Visualizzare XML formattato in HTML HTML e CSS 9
M Visualizzare su più pagine risultato query con fpdf PHP 6
Mer556 Visualizzare un sito nel browser HTML e CSS 1
M Visualizzare da una classe esistente ogni profilo utente PHP 1
Creatt Visualizzare un immagine al mopmento di un messaggio di alert Javascript 7

Discussioni simili