Cari membri del forum,
ho ereditato una paginetta in php che autentifica gli utenti tramite inserimento di login e passw
Questa pagina si trova su un dominio A
Ho realizzato un sito, sul dominio B, in joomla e tramite il modulto wrapper (iframe) carico le pagine del dominio A
Tutto ok con safari, chrome etc ... ma quando uso IE 8 (anche in modalità Visualizzazione compatibilità) la pagina che si occupa di autenticare gli utenti non mi reindirizza più correttamente alle altre pagine ma mi riporta alla pagina di login.
Il codice che gestisce l'autenticazione è questo:
switch($status){
case AUTH_LOGGED:
header("Refresh: 0;URL=newareariservata.php");
//Sei gia connesso ...
break;
case AUTH_INVALID_PARAMS:
header("Refresh: 0;URL=../includePgerr/newuser_password_error.php");
//Hai inserito dati non corretti ...
break;
case AUTH_LOGEDD_IN:
switch(auth_get_option("TRANSICTION METHOD")){
case AUTH_USE_LINK:
header("Refresh: 0;URL=newareariservata.php?uid=".$uid);
$data=date("Y-m-d");
$queryStat="Insert into statistiche(idUser,data) VALUES ('$user[id]','$data')";
mysql_query($queryStat,$conn);
break;
case AUTH_USE_COOKIE:
header("Location:
header("Refresh: 0;URL=newareariservata.php");
setcookie('uid', $uid, time()+3600*365);
$data=date("Y-m-d");
$queryStat="Insert into statistiche(idUser,data) VALUES ('$user[id]','$data')";
mysql_query($queryStat,$conn);
break;
case AUTH_USE_SESSION:
header("Refresh: 0;URL=newareariservata.php");
$_SESSION['uid'] = $uid;
$data=date("Y-m-d");
$queryStat="Insert into statistiche(idUser,data) VALUES ('$user[id]','$data')";
mysql_query($queryStat,$conn);
break;
}
break;
case AUTH_FAILED:
header("Refresh: 0;URL=index.php");
//Fallimento durante il tentativo di connessione ...
break;
}
Ho analizzato un po' il problema da neofita di php e ho constatato che:
a) con le credenziali sbagliate IE mi porta giustamente alla pagina di errore
case AUTH_INVALID_PARAMS:
header("Refresh: 0;URL=../includePgerr/newuser_password_error.php");
quindi ne decuco che il comando header funzioni
b) con le credenziali giuste il codice che reagisce è
case AUTH_USE_COOKIE:
header("Refresh: 0;URL=newareariservata.php");
setcookie('uid', $uid, time()+3600*365);
$data=date("Y-m-d");
$queryStat="Insert into statistiche(idUser,data) VALUES ('$user[id]','$data')";
mysql_query($queryStat,$conn);
a mio avviso internet explorer mi porta come dovrebbe alla pagina newareariservata.php ma non si ricorda che mi sono autenticato e quindi mi rimbalza nuovamente sulla pagina del login
Infatti se apro IE e mi collego direttamente all'indirizzo newareariservata.php (senza essermi autenticato) ... vengo rediretto verso la pagina di login.
Ora se quello che ho scritto è vero, il problema con IE credo sia legato all' Iframe perchè se provo le pagine sul dominio A (direttamente senza l'Iframe) tutto funziona.
Qualcuno può aiutarmi a risolvere il problema?
Grazie infinite e scusate la prolissi !