Stampare informazioni utente

ahmadpour

Utente Attivo
10 Nov 2013
35
0
0
Ciao ho creato un form di registrazione e login e vorrei che quando uno accede vengono scritte le informazioni dell' utente. Ho scritto un codice peró quando provo ad accedere con un altro account mi appare solo le informazioni del primo account con cui ho loggato. Potreste aiutarmi? vorrei che le informazioni cambiano in base a colui che accede. Questo é il codice che ho scritto:

PHP:
<?php
$host="localhost"; // host del database
$uname="root"; // utente del db
$psw=""; // password dell'utente sopra
$nomedb="familiaechat"; // nome del db
mysql_connect($host,$uname,$psw);
mysql_select_db($nomedb);
$q=mysql_query("SELECT * FROM users");
$r=mysql_fetch_assoc($q);
// Ora se nella tabella c'è un campo chiamato ad esempio "nome".

//Se fai così:
echo '<br>';
echo 'Email: '; echo $r['email']; echo '<br>';
echo 'Data di registrazione: '; echo $r['data_reg']; echo '<br>';

?>

Ciao e grazie
 
Ultima modifica di un moderatore:

ahmadpour

Utente Attivo
10 Nov 2013
35
0
0
in questo modo stai selezionando tutti gli utenti della tabella user.

per il singolo utente devi impostare la query con WHERE es:

PHP:
$q=mysql_query("SELECT * FROM users WHERE username="'$username'");

Ciao scusa... ce l'ho fatta però vorrei visualizzare le informazioni anche sulle altre pagine. Appena accedo le informazioni me le fa vedere però quando clicco sul menu che mi porta sul profilo utente non me le fa vedere. Mi viene un errore con scritto che la variabile username non è definita, ho provato a scrivere $username = $_SESSION['username_logged']; ma niente. Come posso fare per visualizzare le informazioni dell utente loggato anche in altre pagine??

Ciao e grazie
 

edin

Utente Attivo
7 Nov 2013
92
0
6
www.edinweb.altervista.org
ciao, nella pagina in cui effettui il login devi impostare la asessione:
PHP:
$q=mysql_query("SELECT * FROM users WHERE username='$username'"); 
if(mysql_num_rows($q)>0)
{
$r=mysql_fetch_assoc($q); 
$_SESSION['username_logged']=$r['username'];
}
 

ahmadpour

Utente Attivo
10 Nov 2013
35
0
0
ciao, nella pagina in cui effettui il login devi impostare la asessione:
PHP:
$q=mysql_query("SELECT * FROM users WHERE username='$username'"); 
if(mysql_num_rows($q)>0)
{
$r=mysql_fetch_assoc($q); 
$_SESSION['username_logged']=$r['username'];
}


Ciao ho scritto quei codici peró mi appare l'errrore variabile non definita. Quando accedo mi vengano le informazioni peró quando clicco sul profilo utente mi viene un errore cioé undefined variable _SESSION .

Quando accedo mi vengono le informazioni perché ho questo codice: $username = $_SESSION['username_logged'];
ho provato a copiarlo ed incollarlo su la pagina del profilo ma non funziona. In poche parole quel codice mi funziona solo appena sono entrato nel mio account poi quando cambio pagina mi da errore. Aiuto !!!
Ciao e grazie
 

ahmadpour

Utente Attivo
10 Nov 2013
35
0
0
Probabilmente manca session_start() all' inizio delle pagine.
Puoi postare il codice della pagina login?

Ciao questo é il codice della pagina dopo che uno é entrato cioé (logged.php):


HTML:
<?php
require_once('lib/Users.class.php');
$login = New Users;
$login->esegui_login();
?>
<html>
<head>
<title>Login page</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.js"></script> 
<script type="text/javascript" src="js/validation_login.js"></script> 
</head>
<body>
<div id="content">


	
<div id="top_header">

</div>
<br>
<br>
<br>
<div id="main">
<?php


$username = $_SESSION['username_logged'];


$host="localhost"; // host del database
$uname="root"; // utente del db
$psw=""; // password dell'utente sopra
$nomedb="familiaechat"; // nome del db
mysql_connect($host,$uname,$psw);
mysql_select_db($nomedb);
$q=mysql_query("SELECT * FROM users WHERE username='$username'");
$r=mysql_fetch_assoc($q);
// Ora se nella tabella c'è un campo chiamato ad esempio "nome".

//Se fai così:
echo '<br><br><br><br><br><br><br><br>';
echo '<font face="Verdana, Geneva, sans-serif" style="font-weight: bold;"><center>'; echo $r['name']; echo ' '; echo $r['lastname']; echo '</font>'; echo '<br><br>';
echo '<center>Email </center>'; echo $r['email']; echo '<br>';
echo 'Data di registrazione: '; echo $r['data_reg']; echo '<br>';

?>
come stai?
</div>

<div id="left_sidebar">
<p>Benvenuto <strong><?php echo $login->get_username(); ?></strong></p>

<?php
echo '<br><br><br><br><br><br><br><br>';
echo '<font face="Verdana, Geneva, sans-serif" style="font-weight: bold;"><center>'; echo $r['name']; echo ' '; echo $r['lastname']; echo '</font>'; echo '<br><br>';


include 'left_menu.php';
?>


</div>


<div id="right_sidebar">

</div>




</div>
</body>
</html>


questo invece é quando uno esegue il login (login.php):

HTML:
<?php

require_once('lib/Users.class.php');
$login = New Users;
$login->esegui_login();
?>
<html>
<head>
<title>Login page</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.js"></script> 
<script type="text/javascript" src="js/validation_login.js"></script> 
</head>
<body>
<div id="content">


<?php if(!$login->is_logged()): ?>
	<?php echo $login->get_login_form(); ?>
	

<?php else: 

	?>

<?php endif; ?>




</div>
</body>
</html>

Ciao e grazie
 
Ultima modifica:

edin

Utente Attivo
7 Nov 2013
92
0
6
www.edinweb.altervista.org
Ciao questo é il codice della pagina dopo che uno é entrato cioé (logged.php):

Se dalla sessione vuoi prendere l'username:
PHP:
$username = $_SESSION['username_logged'];

devi controllare questo metodo all'interno della classe:
PHP:
$login->is_logged()
e chiaramente avere session_start() all'inizio del file logged.php.
Se il login va a buon file devi dare il valore alla variabile di sessione del tipo:
PHP:
$_SESSION['username_logged']=$username;

Poi in questa parte di codice:
PHP:
?php if(!$login->is_logged()): ?>
	<?php echo $login->get_login_form(); ?>
	

<?php else: 

	?>

<?php endif; ?>
se il login viene effettuato rimane pagina bianca oppure c'e' un redirect?
 

ahmadpour

Utente Attivo
10 Nov 2013
35
0
0
Se dalla sessione vuoi prendere l'username:
PHP:
$username = $_SESSION['username_logged'];

devi controllare questo metodo all'interno della classe:
PHP:
$login->is_logged()
e chiaramente avere session_start() all'inizio del file logged.php.
Se il login va a buon file devi dare il valore alla variabile di sessione del tipo:
PHP:
$_SESSION['username_logged']=$username;

Poi in questa parte di codice:
PHP:
?php if(!$login->is_logged()): ?>
	<?php echo $login->get_login_form(); ?>
	

<?php else: 

	?>

<?php endif; ?>
se il login viene effettuato rimane pagina bianca oppure c'e' un redirect?



Ciao scusa ma ho 14 anni. Ho provato a scrivere il codice che mi hai detto cioé session_start(); peró non mi appare niente, invece se lo tolgo mi appare peró quando cambio pagina mi scompare.

<?php if(!$login->is_logged()): ?>
<?php echo $login->get_login_form(); ?>


<?php else:

?>

<?php endif; ?>

Quello che intendevo era che se uno riesce ad accedere allora fai vedere il sito se no rimani sulla pagina di registrazione.
Ciao
 

edin

Utente Attivo
7 Nov 2013
92
0
6
www.edinweb.altervista.org
Si ho capito, nella seconda pagina metti session_start() all'inizio:
PHP:
<?php
session_start();
?>

Quindi se il login ti va, dovresti prendere la condizione "else":
PHP:
<?php if(!$login->is_logged()): ?>
<?php echo $login->get_login_form(); ?>


<?php else:
 echo "login riuscito";
if(isset($_SESSION['username_logged']))
{
echo $_SESSION['username_logged']; 
}
?>

<?php endif; ?>

Se ricarichi la pagina ti dovrebbe stamapre la variabilie di sessione..
 

ahmadpour

Utente Attivo
10 Nov 2013
35
0
0
Si ho capito, nella seconda pagina metti session_start() all'inizio:
PHP:
<?php
session_start();
?>

Quindi se il login ti va, dovresti prendere la condizione "else":
PHP:
<?php if(!$login->is_logged()): ?>
<?php echo $login->get_login_form(); ?>


<?php else:
 echo "login riuscito";
if(isset($_SESSION['username_logged']))
{
echo $_SESSION['username_logged']; 
}
?>

<?php endif; ?>

Se ricarichi la pagina ti dovrebbe stamapre la variabilie di sessione..


Ciao non mi stampa nulla... ho scritto su login.php

<?php

session_start();

?>


e poi ho modificato il login con quello che mi hai scritto. Senza session_start(); mi fa vedere le informazioni e anche quando ricarico peró se vado in un altra pagina le informazioni scompaiono. Su logged.php mi dice undefined variable _SESSION .
Ciao
 

edin

Utente Attivo
7 Nov 2013
92
0
6
www.edinweb.altervista.org
e poi ho modificato il login con quello che mi hai scritto. Senza session_start(); mi fa vedere le informazioni e anche quando ricarico peró se vado in un altra pagina le informazioni scompaiono

nell'altra pagina per recuperare la sessione devi sempre mettere session_start() all'inizio.Quindi mi pare di capire che se nella pagina login.php senza session_start va bene, questa funzione sara' presente per forza da qualche altra parte, pero' ti dovrebbe dare l'errore.. hai provato a inserire all'inizio:
PHP:
ini_set("display_errors",1);
per vedere eventuali errori?
 

ahmadpour

Utente Attivo
10 Nov 2013
35
0
0
nell'altra pagina per recuperare la sessione devi sempre mettere session_start() all'inizio.Quindi mi pare di capire che se nella pagina login.php senza session_start va bene, questa funzione sara' presente per forza da qualche altra parte, pero' ti dovrebbe dare l'errore.. hai provato a inserire all'inizio:
PHP:
ini_set("display_errors",1);
per vedere eventuali errori?

Ho un errore quando entro nella pagina logged.php

Notice: Undefined index: _SESSION in C:\wamp\www\test\guida_semple\logged.php

Se metto session_start(); non mi appaiono le informazioni ma se lo tolgo mi appaiono peró con l'errore che ho scritto.
Quando ricarico le informazioni rimangono peró io vorrei visualizzarle anche in altre pagine cosa che non fa
 
Ultima modifica:

edin

Utente Attivo
7 Nov 2013
92
0
6
www.edinweb.altervista.org
ok, per recuperare le informazioni nell'altra pagina fai un semplice test, commenta tutto e scrivi:
PHP:
<?php
session_start();
if(isset($_SESSION['username_logged']))
{
$username=$_SESSION['username_logged'];
echo $username;
}
else
{
echo "sessione mancante";}
?>
 

ahmadpour

Utente Attivo
10 Nov 2013
35
0
0
ok, per recuperare le informazioni nell'altra pagina fai un semplice test, commenta tutto e scrivi:
PHP:
<?php
session_start();
if(isset($_SESSION['username_logged']))
{
$username=$_SESSION['username_logged'];
echo $username;
}
else
{
echo "sessione mancante";}
?>

Ciao se scrivo

<?php
session_start();
if(isset($_SESSION['username_logged']))
{
$username=$_SESSION['username_logged'];
echo $username;
}
else
{
echo "sessione mancante";}
?>

e poi

$username=$_SESSION['username_logged'];


non mi appare il nome $username

mentre se tolgo

$username=$_SESSION['username_logged'];

mi appare sessione mancante
 
Ultima modifica:

edin

Utente Attivo
7 Nov 2013
92
0
6
www.edinweb.altervista.org
Appunto ti ho modificato la pagina di login fai una prova adesso e poi ricarica la pagina:
PHP:
<?php
session_start();
ini_set("display_errors",1);
require_once('lib/Users.class.php');
$login = New Users;
$login->esegui_login();
?>
<html>
<head>
<title>Login page</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.js"></script> 
<script type="text/javascript" src="js/validation_login.js"></script> 
</head>
<body>
<div id="content">


<?php if(!$login->is_logged()): ?>
	<?php echo $login->get_login_form(); ?>
	

<?php else: 
echo "Login effettuato";
         if(isset($_SESSION['username_logged']))
                 {
                     $username=$_SESSION['username_logged'];
                   echo $username;
                    }   
	?>

<?php endif; ?>




</div>
</body>
</html>
 

ahmadpour

Utente Attivo
10 Nov 2013
35
0
0
Appunto ti ho modificato la pagina di login fai una prova adesso e poi ricarica la pagina:
PHP:
<?php
session_start();
ini_set("display_errors",1);
require_once('lib/Users.class.php');
$login = New Users;
$login->esegui_login();
?>
<html>
<head>
<title>Login page</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.js"></script> 
<script type="text/javascript" src="js/validation_login.js"></script> 
</head>
<body>
<div id="content">


<?php if(!$login->is_logged()): ?>
	<?php echo $login->get_login_form(); ?>
	

<?php else: 
echo "Login effettuato";
         if(isset($_SESSION['username_logged']))
                 {
                     $username=$_SESSION['username_logged'];
                   echo $username;
                    }   
	?>

<?php endif; ?>




</div>
</body>
</html>


Ciao non mi appare l'username e le informazioni

Ho capito....
ho cancellato tutto su logged.php e ho scritto il codice che mi ha detto

ho fatto il login e mi é apparso login effettuato ahmadpour .

Credo che l'errore sia su logged.php non login.php

All'inizio c'era solo login.php peró volevo che quando accedeva entrava su logged.php e quindi ho spostato le informazioni. é meglio che quando uno fai il login sia sempre su login.php oppure lo porta in un altra pagina?
 
Ultima modifica:

edin

Utente Attivo
7 Nov 2013
92
0
6
www.edinweb.altervista.org
Nella pagina di login appunto, fai il login dell'utente, se va a buon fine lo mandi ad altre pagine altrimenti lo blocchi facendo visualizzare il form con eventuale messaggio di errore...
 
Discussioni simili
Autore Titolo Forum Risposte Data
I stampare una stringa echo PHP 2
F Stampare valori di un database PHP 14
A Stampare dati da form PHP 8
Y Stampare da php su un foglio A6 attraverso una stampante esterna PHP 1
G leggere file txt e stampare con php il contenuto a video PHP 7
F stampare a video i risultati della query PHP 1
elpirata Ricavare e stampare indirizzo ip da array associativo PHP 0
B Stampare una porzione della pagina PHP 0
V Come stampare su Excel tabella con rowspan e colspan Javascript 2
elpirata Stampare carattere simbolo euro PHP 10
W Stampare file PDF in varie modalità. Windows e Software 5
L pdo (stampare un valore con ritorno a funzione) PHP 0
P [PHP] Aggiungere giorni e stampare risultato da data inserita in input PHP 3
P [PHP] Stampare record di diverse tabelle ma con nomi uguali PHP 6
K [PHP] Stampare tabella da database differenti. PHP 4
M Stampare con php e mysql PHP 8
L [PHP] stampare un'array di un database PHP 0
J modifica spooler di stampa per stampare in ordine di nome i files pdf Windows e Software 2
T PHP+MYSQL: stampare record con numero progressivo PHP 3
cristoforo58 Stampare dei valori XML in PHP PHP 0
elpirata [PHP] Stampare i valori di una variabile scritta su più righe PHP 1
K [PHP] Cancellare e Stampare tabella PHP 3
M [PHP] come stampare un Qr-code in FPDF PHP 8
M [Javascript] "Stampare" nel codice Var JS Javascript 5
N [PHP] stampare pagina html PHP 0
fulviozecchin [Java] Stampare intervallo tra due interi senza cicli Java 2
F [PHP] Stampare dati inviati tramite ajax PHP 0
elpirata [RISOLTO]Stampare giorno della settimana in tabella php PHP 6
elpirata [PHP] [RISOLTO] Stampare classe css in base al risultato della query PHP 6
Fuego2806 Stampare dati Form su immagine di sfondo con html HTML e CSS 1
Fuego2806 [PHP] Stampare dati Form su immagine di sfondo con html PHP 70
webmachine [PHP] Problema: Stampare tutte le occorrenza di una SELECT PHP 2
momeraths come stampare immagini contenute in un database PHP 7
I stampare in video i dati inseriti nel db PHP 1
M Sito "e-commerce", stampare dati di registrazione e dati dell'acquisto da pagine diverse PHP 7
L Stampare immagine php PHP 2
elpirata Stampare a video in echo table il risultato di una query PHP 4
Shyson Stampare lista in ordine decrescente Database 1
A Stampare senza sidebar Javascript 0
F stampare array php PHP 2
N Non stampare valori duplicati PHP 1
T Stampare maschera fronte/retro MS Access 0
C Stampare font personalizzati HTML e CSS 2
S estrarre e stampare a video un record in un div PHP 7
N FPDF stampare pdf automaticamente su stampante impostata PHP 0
M Stampare valore di un array PHP 1
P Stampare a video PHP 1
P Stampare '<?' in php PHP 7
D Stampare una query in una tabella MySQL 2
P Stampare valore font-size da css con javascript Javascript 2

Discussioni simili