mantenere sessione login?

yesno

Nuovo Utente
13 Feb 2013
30
0
6
Ciao a tutti, premetto che non sono molto forte con PHP/MySQL.
Io faccio effettuare un login che permette di accedere in un'area riservata. Il problema è che quando ad esempio l'utente va in un'altra pagina, per poter ritornare nella zona riservata richiede il login. Non so come fare a mantenere la sessione di login aperta.:crying:
Qualcuno può aiutarmi?
Grazie in anticipo!
 
Ultima modifica:

helpdesk

Utente Attivo
30 Set 2009
726
0
0
Pesaro
Ciao.
Prova così:
PHP:
<?php 
   @session_start();
  if(isset($_POST['nickname'])&&($_POST['nickname']!="")){
    include '../config.php';
    $_SESSION['username'] = $_POST['nickname'];
    $user = $_SESSION['username'];
    @header('Location:tuapagina.php');
  }else{
?>
<html>
<head>
<title>Login</title>
 </head>
  <body>
  <p>
  <form method="post" action="../login.php">
    Scegli il tuo nickname<br><br>
   <input type="text" name="nickname" maxlength="10">
   <input type="submit" value="ENTRA">
 </form>
 </p>
  </body>
</html>
 <?
 }
?>

ovviamente nel file config.php vanno inseriti i parametri per la connessione.
Nella pagina di benvenuto fai l'echo di user echo($user);
 
Ultima modifica:

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
Ciao.
Prova così:
PHP:
<?php 
   @session_start();
  if(isset($_POST['nickname'])&&($_POST['nickname']!="")){
    include '../config.php';
    $_SESSION['username'] = $_POST['nickname'];
    $user = $_SESSION['username'];
    @header('Location:tuapagina.php');
  }else{
?>
<html>
<head>
<title>Login</title>
 </head>
  <body>
  <p>
  <form method="post" action="../login.php">
    Scegli il tuo nickname<br><br>
   <input type="text" name="nickname" maxlength="10">
   <input type="submit" value="ENTRA">
 </form>
 </p>
  </body>
</html>
 <?
 }
?>

ovviamente nel file config.php vanno inseriti i parametri per la connessione.
Nella pagina di benvenuto fai l'echo di user echo($user);
Piccoli suggerimenti:
-Non usare <? ma sempre <?php
-Non utilizzare la chiocciola se non in caso di inutili notice
-Puoi fare direttamente cosi $user = $_SESSION['username'] = $_POST['nickname'];
-Era sufficiente utilizzare empty nell'if if(!empty($_POST['nickname'])){ ....
 

helpdesk

Utente Attivo
30 Set 2009
726
0
0
Pesaro
Concordo! peccato pero' che non abbia scritto io quel codice
ma l'abbia reperito al volo da un esempio online e che me ne sia accorto
troppo tardi quando i tempi di edit erano terminati.
Se l'avvessi scritto io non solo non avrei commesso quegli errori
ma avrei anche aggiunto la password con
tanto di MD5 per la codifica hash.
Tuttavia hai ragione, buon suggerimento! :)
 
Ultima modifica:

Nefyt

Utente Attivo
17 Apr 2012
1.102
0
0
Concordo! peccato pero' che non abbia scritto io quel codice
ma l'abbia reperito al volo da un esempio online e che me ne sia accorto
troppo tardi quando i tempi di edit erano terminati.
Se l'avvessi scritto io avrei comunque non solo non avrei commesso quegli errori ma avrei anche aggiunto la password con
tanto di codifica hash MD5.
Tuttavia hai ragione buon suggerimento! :)
Concordo per la codifica md5, ma l'importante è ripeterla più volte sulla stessa variabile perché cosi è molto più difficile da trovare un hash di un hash nel caso di violazione illecita del database(es. puo evitare attacchi brute-force di tipo dizionario, o scansare molti di quei siti 'decrypter' di md5 che usano lo stesso principio di combinazione) oppure eventualmente combinare sha1 a md5
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
Ho finito da poco di leggere un libro sulla criptazione e la pratica di creare una criptazione di un dato criptato è altamente sconsigliata perché in genere si indebolisce.
Però ci ho pensato su, come dice nefyt ci sono molti decrypter online e magari criptando due volte lo stesso dato si potrebbe fuorviare qualcuno che non è esperto. Uno esperto in questo ambito sa bene anche quali algoritmi di criptazione sono stati utilizzati avendo il dato criptato.
Quindi diciamo che criptare due volte funziona per utenti inesperti ma ha un limite anche questa pratica ovviamente.
 
Ultima modifica:
Discussioni simili
Autore Titolo Forum Risposte Data
asevenx mantenere sessione login attiva anche in altre pagine PHP 8
O Mantenere una sessione PHP 20
S mantenere le modifiche in un file php PHP 2
S [PHP] Come mantenere selezionato checkbox dopo aver cliccato submit PHP 7
A Mantenere la validazione reindirizzandoci su un secondo sito WEb. (ASP.NET) ASP.NET 0
I [Javascript] mantenere un bottone abilitato al refresh della pagina Javascript 1
M [PHP] Mantenere variabile con datagrid nella pagina 2 PHP 1
S [PHP] Mantenere selezionato il valore scelto dopo submit PHP 16
F Mantenere selezione immagine Javascript 1
M [PHP - MYSQL] Mantenere filtro query in tabelle paginate PHP 3
A Mantenere il focus su di una inputbox Javascript 1
G Freelancer: quanto costa aprire e mantenere la partita IVA? Discussioni Varie 3
N Ciclare sul DB e mantenere i dati PHP 3
P Mantenere valore di un form anche dopo refresh PHP 6
S Mantenere dati form in memoria PHP 29
N Mantenere scelte fatte in un form PHP 5
A Mantenere le proporzioni Photoshop 3
L Convalidare form e mantenere il valore PHP 5
T Mantenere la posizione della pagina dopo postback PHP 1
E Flash mantenere un livello sempre animato Flash 1
J Come mantenere lo stato del "creator"? Javascript 0
S Ereditare e Mantenere Collegate Proprieta Flash 0
E Mantenere la stessa pagina cambianto il contenuto Classic ASP 1
opeth978 mantenere le informazioni PHP 19
C asp: mantenere l ostato 2 consigli Classic ASP 2
G Combo ... mantenere la selezione fatta Classic ASP 0
L Sessione e array per utenti PHP 0
N Variabile di sessione è un array PHP7 PHP 3
R probema con la sessione PHP 0
S Utilizzo variabili di sessione tra PC e server PHP 0
M [PHP] Passare variabile di sessione con metodo GET PHP 10
R SESSIONE PERSISTENTE Programmazione 0
L [PHP] Suggerimento su sessione PHP 6
Cosina [PHP] Chiudere sessione quando la pagina viene riaggiornata PHP 4
cattivic72 [PHP] Durata sessione PHP 1
N [PHP] Utilizzo variabili di sessione [Risolto] PHP 13
I [PHP] login con sessione singola PHP 1
otto9due [PHP] id di sessione "session_id()" a cosa serve e come utilizzarlo? PHP 4
K [PHP] Unica sessione login forum/sito PHP 1
L [PHP] Sessione tra sottodominio PHP 1
M [PHP] Sessione Login PHP 15
gandalf1959 [PHP] variabile di sessione si azzera ricaricando la pagina? PHP 3
Emix Sessione strana... PHP 16
P dati da tenere in sessione PHP 2
M durata sessione php PHP 1
L Sessione php PHP 6
G Uso variabili di sessione PHP 4
N warning su sessione PHP 2
Emix Problema sessione PHP 6
M Problemi col settare variabile di sessione PHP 3

Discussioni simili