|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
[PHP] probelam con le sessioni...
Salve raga
![]() allora, ho una pagina html che tramite form chiama una pagina php per effettutare la login. la pagina php è la seguente Codice:
<?php session_start(); include("connessione.php"); $login = $_POST['login']; $password = $_POST['password']; $query_user = "select * from account where email='$login' and password='$password'"; $ris_user= mysql_query($query_user,$connection); $num_righe_user = mysql_num_rows($ris_user); if ($num_righe_user != 0){ $riga_user = mysql_fetch_array($ris_user); $tipo_accesso = $riga_user["tipo"]; $nome = $riga_user["nome"]; session_register("nome"); $_SESSION [ "nome" ] = $nome; $_SESSION["tipo"] = $tipo_accesso; $id=session_id(); $_SESSION["id_session"] = $id; header("Location: ../Prove/ucTEST.php"); } else { echo "errore nella login"; } mysql_close($connection); ?> Codice:
<?php if (isset($_SESSION["nome"])){ echo "Il nome è: " . $_SESSION["nome"] ;} else{ echo "errore nella sessione";} ?> ![]()
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ... ![]() ![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
session_start(); devi metterla in ogni pagina in cui vuoi gestire le sessioni e le relative variabili in $_SESSION.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
ho modificato in questo modo
Codice:
<?php session_start(); if (isset($_SESSION["nome"])){ echo "Il nome è: " . $_SESSION["nome"] ;} else{ echo "errore nella sessione";} ?> ![]()
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ... ![]() ![]() |
![]() |
![]() |
![]() |
#4 |
Member
Iscritto dal: May 2007
Messaggi: 59
|
(non c'entrerà un cazzo) ma non è che non gli piacciono gli spazi di questa riga?
$_SESSION [ "nome" ] = $nome; (prima e dopo "nome")
__________________
Nessuno visita i tuo sito? Rivolgiti a zioSEM! Una web agency di Torino specializzata nel web marketing. Ti vuoi svagare? Giochi gratis e viaggi in camper |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Non usare session_register(), usa solo $_SESSION.
La documentazione dice: "If your script uses session_register(), it will not work in environments where the PHP directive register_globals is disabled."
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
ancora niente
![]() Codice:
<?php session_start(); include("connessione.php"); $login = $_POST['login']; $password = $_POST['password']; $query_user = "select * from account where email='$login' and password='$password'"; $ris_user= mysql_query($query_user,$connection); $num_righe_user = mysql_num_rows($ris_user); if ($num_righe_user != 0){ $riga_user = mysql_fetch_array($ris_user); $tipo_accesso = $riga_user["tipo"]; $nome = $riga_user["nome"]; $_SESSION["nome"] = $nome; $_SESSION["tipo"] = $tipo_accesso; $id=session_id(); $_SESSION["id_session"] = $id; header("Location: ../Prove/ucTEST.php"); } else { echo "errore nella login"; } mysql_close($connection); ?>
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ... ![]() ![]() |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
![]()
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ... ![]() ![]() |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
![]()
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ... ![]() ![]() |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
In genere in questi casi è meglio "fermarsi" un momento e provare un qualcosa di più semplice per capire dove sta il problema.
Questo funziona (provato): prova1.php Codice:
<?php session_start (); $_SESSION['msg1'] = "Ciao, prova sessione"; $_SESSION['var2'] = 123; header ("Location: prova2.php"); ?> Codice:
<?php session_start (); foreach ($_SESSION as $k => $v) echo htmlentities ($k) . " = " . htmlentities ($v) . "<br>\r\n"; ?>
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
non funziona...
![]() da cosa può dipendere?
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ... ![]() ![]() |
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Nov 2000
Città: Salerno
Messaggi: 4338
|
Ho risolto
![]() mancava la cartella dove venivano memorizzati i file temporanei delle sessioni ![]() Ora fuziona il tutto Grazie comunque ![]()
__________________
Doc : "Ovviamente, il continuum temporale è stato interrotto creando questa nuova temporale sequenza di eventi risultante in questa realtà alternativa" Marty : ... ![]() ![]() |
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Oct 2000
Città: Udine
Messaggi: 3178
|
un consiglio.
non so se il tuo frammento di codice è quello che attualmente usi o un esempio, tuttavia dovresti preoccuparti dell' http://it.wikipedia.org/wiki/SQL_injection. usa mysql_escape_string. è una problema che devi porti con qualsiasi linguaggio (forse escluso vb.net ![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:01.