SESSIONI:queste sconosciute

epigrottero

Nuovo Utente
3 Dic 2008
10
0
0
Ciao a tutti, innanzitutto mi congratulo
per questo spazio libero in cui ci si può scambiare esperienze e soprattutto si
possono risolvere problemi perchè ... qualcuno ci è già passato!

Naturalmente anch'io ho un piccolo problemino da sottoporre:

nel mio piccolo sitarello
sulla pagina di login identifico l'idutente
lo trasmetto alla pagina benvento con una sessione
e lì lo ritrovo regolarmente, ma appena richiamo un form da benvenuto...
il valore si annulla!!! Xkè?

Di seguito invio le sequenze di codice interessate:

login.php:
session_start();

$_SESSION['idutente'] = $idutente;
$_SESSION['utente']=$utente;
$_SESSION['password']=$password;
$_SESSION['ftp']=$_POST['ftpurl'];

header('location:benvenuto.php');
-----------------------------------------
benvenuto.php:
$vbapc = chr(34);
echo "<a href= $vbapc # $vbapc onclick= $vbapc window.open('iscrizione.php') $vbapc class=$vbapc changeColor5 $vbapc style= $vbapc text-decoration: none; $vbapc >Aggiorna profilo</a>";


iscrizione.php:
<?php

session_start();


// qui il valore arriva NULL
if (isset($_SESSION['idutente']))
{

grazie x la collaborazione, ciao epi.

P.S. Il server è Linux
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
premetto che non sono un espertissimo
ma prova a mettere al posto di session_start

PHP:
if(!isset($_SESSION)){
session_start ();
}
 

satifal

Utente Attivo
25 Set 2008
522
13
0
Roma
Ho provato il codice che hai postato e in locale sembra funzionare correttamente. Sul PC di prova ho win XP, ma non credo la cosa dipenda dal SO.
 

epigrottero

Nuovo Utente
3 Dic 2008
10
0
0
in locale funziona?

Ho provato il codice che hai postato e in locale sembra funzionare correttamente. Sul PC di prova ho win XP, ma non credo la cosa dipenda dal SO.
b

Ho aggiunto il particolare sul server xkè magari su linux di default in php.ini potrebbero esserci delle restrizioni...

comunque ora monto un servizio apache sul nb e vedo se in locale funge anche a me...
 

satifal

Utente Attivo
25 Set 2008
522
13
0
Roma
Avevo pensato anche io a qualche particolare configurazione del file php.ini, per questo ti ho specificato che la prova da me effettuata è stata fatta in locale. Fammi sapere.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
una domanda a satifal

se nella pagina 1 creo la sessione, se nella pagina 2 ricreo le sessioni sono diverse?
se il discorso è influente perhè mi hanno insegnato a mettere if sessione non esiste crea? e quindi se esiste di gia non la crea?

quindi serve o no if(!issest($_session)...?
 

satifal

Utente Attivo
25 Set 2008
522
13
0
Roma
la funzione session_start() crea una sessione oppure riprende la sessione corrente per cui se in una pagina utilizzo tale funzione per creare una sessione nelle pagine successive l'utilizzo di tale funzione recupera la sessione già in uso senza crearne una nuova.
 

epigrottero

Nuovo Utente
3 Dic 2008
10
0
0
ciao
una domanda a satifal

se nella pagina 1 creo la sessione, se nella pagina 2 ricreo le sessioni sono diverse?
se il discorso è influente perhè mi hanno insegnato a mettere if sessione non esiste crea? e quindi se esiste di gia non la crea?

quindi serve o no if(!issest($_session)...?

Scusa se rispondo io, ma secondo me la tua istruzione è senz'altro corretta e comunque rappresenta un controllo, infatti se la sessione esiste già 'session_start();' la riapre e se vuoi aggiorna valori o li aggiunge, comunque non la ricrea (questo almeno ho capito io!); è infatti indispesabile in una nuova pagina per rileggere i dati precedentemente inseriti.
 

epigrottero

Nuovo Utente
3 Dic 2008
10
0
0
Avevo pensato anche io a qualche particolare configurazione del file php.ini, per questo ti ho specificato che la prova da me effettuata è stata fatta in locale. Fammi sapere.

Ho provato in locale, ma a me non funziona!
il valore arriva alla seconda pagina e li muore!
Comincio a pensare che il problema può essere la chiamata alla terza pagina:

$vbapc = chr(34);
echo "<a href= $vbapc # $vbapc onclick= $vbapc window.open('iscrizione.php') $vbapc class=$vbapc changeColor5 $vbapc style= $vbapc text-decoration: none; $vbapc >Aggiorna profilo</a>";

cioè window.open

forse è questo che nn va, che dici?
 

satifal

Utente Attivo
25 Set 2008
522
13
0
Roma
Prova a controllare l'impostazione dell'attributo:

session.use_cookies

nel file php.ini

Io l'ho configurato ad 1 e ciò abilita l'utilizzo dei cookies per conservare l'ID della sessione per cui la funzione session_start() recupera automaticamente tale ID dal cookie che lo contiene.
Se session.use_cookies è impostato ad 1 il browser deve accettare i cookies altrimenti l'ID della sessione viene accodato agli URL relativi generati dallo script.
 

epigrottero

Nuovo Utente
3 Dic 2008
10
0
0
Ho provato in locale, ma a me non funziona!
il valore arriva alla seconda pagina e li muore!
Comincio a pensare che il problema può essere la chiamata alla terza pagina:

$vbapc = chr(34);
echo "<a href= $vbapc # $vbapc onclick= $vbapc window.open('iscrizione.php') $vbapc class=$vbapc changeColor5 $vbapc style= $vbapc text-decoration: none; $vbapc >Aggiorna profilo</a>";

cioè window.open

forse è questo che nn va, che dici?

nn è neanche quello... ho sostituito on click window.open
con un classico 'a href' ma ancke l, nisba!!!
Tra l'altro cercando soluzioni ho trovato un es che ho voluto provare:

ss1.php:

<?php
# ss1.php

session_start();
$num_impiegato =session_id();
session_register("nome","dipartimento"); ?>

<HTML>
<BODY>
<?php
$form="<CENTER><H2>Consegne Spa - Nuovo Impiegato</H2></CENTER>
<FORM ACTION=\"http://localhost/ss2.php\" METHOD=\"POST\">
<B>Nome impiegato:</B><BR>
<INPUT TYPE=\"text\" NAME=\"nome\" SIZE=20>
<BR><B>Dipartimento</B><BR>
<SELECT NAME=\"dipartimento\" >
<OPTION SELECTED>Autista consegne
<OPTION>Magazzino
<OPTION>Vendite
<OPTION>Amministrazione
</SELECT>
<BR>
<INPUT TYPE=\"submit\" VALUE=\"Pagina seguente\">
<INPUT TYPE=\"reset\" VALUE=\"Cancella!\">
</FORM>";
?>
</BODY></HTML>
<?php
echo $form;
?>

-----------
ss2.php:

<?php
session_start();
session_register("indirizzo","telefono");
?>
<HTML>
<BODY>
<?php
$form="<CENTER><H2>Consegne Spa - Nuovo Impiegato</H2></CENTER>
<FORM ACTION=\"http://localhost/ss3.php\" METHOD=\"POST\">
<B>Indirizzo impiegato:</B><BR>
<INPUT TYPE=\"text\" NAME=\"indirizzo\" SIZE=30>
<BR><BR><B>Numero telefono impiegato:</B><BR>
<INPUT TYPE=\"text\" NAME=\"telefono\" SIZE=30>
<BR>
<HR>
<INPUT TYPE=\"submit\" VALUE=\"Pagina seguente\">
<INPUT TYPE=\"reset\" VALUE=\"Cancella!\">
</FORM>";
?>
</BODY></HTML>

<?php
echo "$form";
?>

-----

ss3.php:

<HTML>
<BODY>
<CENTER><B><H3> Ecco le informazioni sul nuovo impiegato</H3></B></CENTER>
<?php
$visualizza="<PRE>
Nome impiegato: $nome<BR>
Dipartimento: $dipartimento<BR>
Livello retributivo: $stipendio<BR>
Sede: $sede<BR>
Indirizzo casa: $indirizzo<BR>
Telefono: $telefono<BR>
ID impiegato: $num_impiegato<BR></PRE>";
?>
</body>
</html>
<?
echo "$visualizza";
$destinatario="[email protected]";
$header="Inserimento nuovo impiegato";
$info="Ecco le informazioni...
NOME: $nome
DIPARTIMENTO: $dipartimento
LIVELLO RETRIBUTIVO: $stipendio
INDIRIZZO CASA: $indirizzo
NUM TELEFONO: $telefono
ID IMPIEGATO: $num_impiegato";
//mail($destinatario,$header,$info);

session_destroy();
?>

-------
e incredibilmente nn funziona neanche quello!!!
sulla terza pagina nn arriva niente, bello no? Boh non so che fare!
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
come dice statifal controlla tutto phpini
io l'utilizzo e mi si tramette per quante pagine voglio (sia blank, parente o aperte con window.open)
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
scusa sono qui di nuovo, ma io uso il forum per imparare

non vorrei dire una ..., ma in benvenuto.php non c'è session_start?,

inoltre hai provato a mettere degli echo per vedere dove sparisce la sessione?

quando ho degli errori cospargo a pioggia lo script di echo seguendo passo passo la vita delle variabili
 

epigrottero

Nuovo Utente
3 Dic 2008
10
0
0
scusa sono qui di nuovo, ma io uso il forum per imparare

non vorrei dire una ..., ma in benvenuto.php non c'è session_start?,

inoltre hai provato a mettere degli echo per vedere dove sparisce la sessione?

quando ho degli errori cospargo a pioggia lo script di echo seguendo passo passo la vita delle variabili

nn scusarti, anzi grazie x l'interessamento.
Dunque, io uso
var_dump($variabile);
che mi piace, e ho valutato che in benvenuto.php i valori arrivano, invece in iscrizione.php nn arriva niente!
X questo pensavo che il problema fosse window.open, ma nn è così!
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao una domanda indiscreta, perchè

PHP:
echo "<a href= $vbapc # $vbapc onclick= $vbapc window.open('iscrizione.php') $vbapc class=$vbapc changeColor5 $vbapc style= $vbapc text-decoration: none; $vbapc >Aggiorna profilo</a>";

enon

echo "<a href= \" # \"... eccetera

oppure

echo "<a href= '#'... eccetera

ford (quello delle macchine non indiana) diceva "quello che non c'è non si guasta"
 

epigrottero

Nuovo Utente
3 Dic 2008
10
0
0
ciao una domanda indiscreta, perchè

PHP:
echo "<a href= $vbapc # $vbapc onclick= $vbapc window.open('iscrizione.php') $vbapc class=$vbapc changeColor5 $vbapc style= $vbapc text-decoration: none; $vbapc >Aggiorna profilo</a>";

enon

echo "<a href= \" # \"... eccetera

oppure

echo "<a href= '#'... eccetera

ford (quello delle macchine non indiana) diceva "quello che non c'è non si guasta"

Ho verificato la presenza in \php\php.ini dei parametri relativi alle sessioni:

session.name = PHPSESSID
session.use_cookies = 1
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.cookie_httponly =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 100
session.gc_maxlifetime = 1440
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0
session.hash_bits_per_character = 4

x quanto riguarda l'uso di $vbapc e non \" è una vecchia deformazione..
sono un vecchio programmatore vb e non ho perso alcune abitudini di quel linguaggio, eh eh eh.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
confronta

session.auto_start Off Off
session.bug_compat_42 On On
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_httponly Off Off
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 100 100
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.hash_bits_per_character 4 4
session.hash_function 0 0
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path C:/DOCUME~1/Gianni/IMPOST~1/Temp C:/DOCUME~1/Gianni/IMPOST~1/Temp
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid 0 0


questo è quanto ho io e funzia tutto

dimenticavo php 5


p.s.
vecchio vb? hai mai provato con le schede perforete?
 

epigrottero

Nuovo Utente
3 Dic 2008
10
0
0
vecchio vb? hai mai provato con le schede perforete?

Eh eh eh, io le schede 'perforete' le ho usate davvero con un incredibile honeywell serie 60 level 6 con tanto di lettore di schede, perforatrice per scrivere i programmi ed enormi winchester con maniglia, grandi come i cerchi di un crossover.
Programmazione strutturata in fortrain e cobol.... bah, altri tempi.
Comunque, HO RISOLTO !!!:elvis::elvis::elvis:

Problemi riscontrati:

in php.ini importantissimo verificare la presenza della cartella indicata
nella direttiva

session.save_path = "/cartella"

se il percorso nn esiste è la fine! E in più lì si può andare a verificare come stanno le cose aprendo il file che viende creato quando si crea una sessione.

Poi, ahime, in benvenuto.php c'era scritta una cavolata che comunque inficiava qualsiasi tentativo di riuscita:
<html>
<head>
<script>

function Logout()
{

<?php
if (isset($_SESSION['utente']))
{
session_destroy();
}
('location:software.htm');
?>

link("software.htm")
}

</script>

e questo xkè sono scarsetto e nn ho considerato che comunque php viene eseguito!!!

Sono comunque contento x avere risolto e per avere conosciuto due anime pie che mi hanno dato 1 mano.
GRAZIE GRAZIE, e per ora CIAO, epi.
 

satifal

Utente Attivo
25 Set 2008
522
13
0
Roma
Bene, sono contento che tu abbia risolto il problema. Comunque il file benvenuto.php andava bene così com'era, almeno a me non dava problemi. La prova che ho fatto inizialmente era basata esclusivamente sul codice postato da te per vedere se funzionava correttamente e non ho avuto problemi.
 
Discussioni simili
Autore Titolo Forum Risposte Data
keyascii File temporanei Sessioni PHP 6
T PROBLEMA CON SESSIONI PHP 3
ilsuomillennio Sessioni PHP 3
maxnegri Contare sessioni aperte e creare condizione PHP 1
AC1 Sessioni php PHP 16
S [PHP] problemi con le sessioni PHP 3
B [PHP] Reload pagina e sessioni PHP 3
A Php e sessioni PHP 3
J sessioni in PHP PHP 3
T gestione livelli sessioni php msqli PHP 1
M Problema MySQL e sessioni MySQL 0
A form su più pagine e sessioni PHP 8
V Le sessioni: ho dei dubbi sul posizionamento PHP 6
A sessioni sicure? PHP 5
G Controllo scadenza sessioni PHP 2
M Sessioni??? PHP 4
C Sessioni in php (urgente) PHP 4
R Efficenza sessioni con proxy PHP 0
baobabdesign Problema scrittura sessioni PHP 0
Shyson Non mantiene sessioni PHP 0
L segnalare l'utilizzo delle sessioni come accade per i cookie PHP 0
D Login con sessioni per 2 pagine diverse PHP 2
L problema array con le sessioni PHP 1
D Sessioni e variabili PHP 4
R problema con le sessioni PHP 2
L Sessioni rank [#PHP] PHP 3
R Sessioni, cookies e token di autenticazione PHP 0
E [risolto] win 8.1 + IE11 le sessioni PHP non fuonzionano correttamente PHP 7
A Sessioni php PHP 0
otto9due [risolto] Problema sessioni php e login PHP 5
B Sessioni PHP 10
H [risolto] Uso delle SESSIONI PHP 2
F Sessioni PHP 1
A conservazione sessioni PHP 2
S Stampare una variabile in ogni pagina usando le sessioni PHP 5
Z Registrazione e sessioni PHP 8
asevenx problema con le sessioni PHP 6
S Un piccolo aiuto su cookie e sessioni PHP 1
S Problema con sessioni PHP 4
I Problema con le sessioni PHP 2
Emix Problema sessioni... PHP 17
Z Sessioni - Database PHP 6
P Problema con l'uso delle sessioni... PHP 4
E Gestione Sessioni sui file anziche nel database - Come fare? Joomla 0
P Problema con sessioni e aggiornamento profilo PHP 21
redevilduil Php problema nelle sessioni PHP 6
P Ho riunito le prove con le sessioni, ma l'update non va PHP 20
Shyson Non mantiene le sessioni PHP 7
D [JSP] Gestire eccezioni relative alla scadenza delle sessioni Java 0
M $_SESSION['sessione'][1] possibile? Sessioni con indice. PHP 8

Discussioni simili