Newsgroup: it.comp.www.php
Titolo: Frame e e sessioni

 Ciao a tutti, su internet explorer ho dei problemi a mantenere le 
sessisoni, se azichè accedere direttamente alla pagina, accedo tramite frame 
per nascondere l'url principale. Tutto questo con altri browser non succede, 
safari firefox netscape.. vabbè..
ora ho trovato la soluzione al primo refresh quando effettuo il login 
mettendo questo... dopo l'autenticazione
$sid = session_name()."=".session_id();
header("Refresh: 5;URL=admin.php?$sid");
e così passo il primo ostacolo..
ma la pagina di admin ha vari form, cosa dovrei fare secondo voi passare 
questa mia variabile $sid in hidden o in querystring a tutte le pagine 
protette..?
e se si...
ci sono delle controindicazioni o soluzioni migliore che consigliate...
ah.. tenete presente che questa modica la sto facendo solo per il semplice 
fatto che accedo all'aplicaizone come dicevo tramite frame.. da un sito che 
mi nasconde la vera origine dell'applicazione (con frame top a zero pixel e 
frame di sotto che mi prende il vero sorgente sul server che supporta php..)
dico questo perchè se accedo direttamente al sever dove risiede 
l'applicaizone.. nessun problema..sarà un bug di internet explorer?
grazie per i vostri consigli!
Buona serata
Giuseppe 

Proprio nessuno a mai avuto lo stesso problema...?
:)
buona giornata!
giuseppe
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 problema..sar` un bug di internet explorer?
Guarda che comunque cosi' nascondi veramente poco.
-- 
I am what I am, I do what I can
Do. Or do not. There is not try.

 Guarda che comunque cosi' nascondi veramente poco.
Quello che mi interessa che ad untente non esperto che va a vedere sulla
barra URl veda sempre l'altro sito.. (che purtroppo non supporta php!)
Ma perchč secondo te mi succede solo con internet explorer, e perchč solo
se accedo tramite frame?
Cerco di essere piů chiaro su come č fatta l'applicazine anche se penso
che ho reso l'idea, ma cosě vi indico la struttura:
Su questo server che non supporta php ho una pgina che mi fa da index con
frame top a zero pixel e nel frame di sotto vado a prendere in successione
le mie pagine.. 
all'inizio ho un'index.php dove l'utente inserisce user e pwd e il form mi
punta ada un login.php che mi contiete un include con tutte la funzione
che si occupa dell'autenticazione auth.php, questa la funzione: 
//auth.php
session_start(); 
function auth_login($uname, $passw){
$result = mysql_query("SELECT *	FROM tbadministrator WHERE
username='".$uname."' and password='".$passw."'");
    $numero = mysql_num_rows($result) or die(mysql_error());
 
  if ($numero > 0){
     $row_rs = mysql_fetch_array($result);
 
    $_SESSION["id_utente"] = $row_rs['id'];
    $_SESSION['titolo']	= $row_rs['titolo'];		
    $_SESSION['nome_admin']		= $row_rs['nome'];	
    $_SESSION['cognome_admin']	= $row_rs['cognome'];		
    $_SESSION["admin"]		= $row_rs['admin'];
 
    $sid = session_name()."=".session_id();
 
    header("Refresh: 5;URL=admin.php?$sid");
    echo "<div align=\"center\"><span class=\"Stile3\">";
    echo "Ciao <B>" .$row_rs['nome']. "  "; 
    echo $row_rs['cognome'] . "</B> ....attendi il";
    echo " reindirizzamento<br>";
    echo "Oppure <a href=\"admin.php?$sid\">clicca ";
    echo "quě</a></span></div>";
 
	}else{
 
    echo '<div align="center">';
    echo 'Hai inserito dati non corretti...'; 
    echo 'attendi il reindirizzamento</div>';
	}
}
in tutte le pagine successive ho questo include check.php 
<?
//chech.php
session_start();
if (empty($_SESSION[admin])) {
   echo "<Center><font type=\"verdana,arial\" size=\"4\">";
   echo "<B>Attenzione!!</B>";
   echo "</font><BR><font size=\"3\">";
   echo "Area riservata, accesso non consentito</font></center>";
   echo "<Center>Verrete rimandati alla pagina di login</Center>";
   echo "</HEAD><BODY></BODY></HTML>";
   die;
}
	$id_utente=$_SESSION[id_utente];
?>
allora come vedete nella funzione di autenticazione, se sono autenticato,
la pagina mi fa una 
header("Refresh: 5;URL=admin.php?$sid"); 
e giŕ in admin se non mettevo quella variabile $sid, mi perdevo la
sessione. 
la pagina admin contiene link e form ad altre pagine, e quello che
chiedevo č,... se mai possibile che mi devo portare dietro la sessione in
questo modo... o con querystring o hidden... 
Ma ora a metterla come costante  nel file include check.php se č questo
che ho capito :)
scusa se mi sono dilungato ma cos'ě credo di essere stato piů chiaro... e
poi cosě mi dai conferma che gli script cosě come stanno non dovrebbe dare
problemi vero?
grazie e buona girnata!


 header("Refresh: 5;URL=admin.php?$sid"); 
http://it2.php.net/session#42240


                      ^^^^^^^
appunto risulta vuoto o non esiste proprio!
Poi ancora ma comunque se ho ben capito bene la soluzione che tu propopni
e sempre quella di portarmi dietro la sessione per querysting.. visto che
così funge..
ah e se così fosse come faccio quando sono in presenza di form?
scusami Setec Astronomy ma di solito non sono così di coccio.. e che
porprio non riesoc a trovare una soluzione...
colpa di sti maledetti frame perchè se no funge tutto!
Ancora grazie della pazienza, se già non te l'ho fatta perdere:
Saluti e buona serata Giuseppe


> > Apri il manuale, vai alla pagina delle sessioni e lo capirai.
forse è questo: 
session.use_trans_sid
 e visto che è su aruba dovrei settare al volo php.ini?
dicevi questo? grazie


> > Apri il manuale, vai alla pagina delle sessioni e lo capirai.
forse è questo: 
session.use_trans_sid
 e visto che è su aruba dovrei settare al volo php.ini?
dicevi questo? grazie
-- 
