Salve, mi date una mano a risolvere questo problema ?
questo comando non funziona con internet explorer , come posso by-passare ?
con altri browser funziona
header("Location: paginadaaprire.php");
Printable View
Salve, mi date una mano a risolvere questo problema ?
questo comando non funziona con internet explorer , come posso by-passare ?
con altri browser funziona
header("Location: paginadaaprire.php");
Non è possibile, dev'esserci qualche altro problema, Internet Explorer supporta appieno i reindirizzamaneti mediante l'header HTTP Location. Probabilmente il problema è da qualche altra parte, puoi indicare l'indirizzo della pagina in questione?
ecco la parte del codice php
con internet explorer viene fuori sempre username o password errata cosa che non succede con mozilla, safari ecc...Codice PHP:if ( $esito == 1 ) {
session_start();
$_SESSION['username'] = $myusername;
$_SESSION['password'] = $pass;
if ( $ricorda == "ON") {
session_start();
$cok = $myusername."789456".$pass;
setcookie("cookie",$cok,time()+31536000,"/");
}
header("Location: miapagina.php");
} else {
echo "<p align='center'><font color='#FF0000' size='5'> Username o password errata. <br>";
echo "<p align='center'><a href='javascript:history.go(-1)'>Torna Indietro</a></p>";
}
Se viene scritto username o password errata, non è un problema della header(), perché cade in un altro ramo dell'if.
Quindi la condizione "$esito == 1" varia da browser a browser.... Penso sia un problema nell'invio dei dati, ma non ho altri elementi per dire dove sta il problema.
Ciao!
il controllo e la ricerca nel db lo fa così
Codice PHP:$cercautente = "SELECT * FROM utenti WHERE username = '$myusername' and password = '$pass' and reg='1'";
$query_result = mysql_query($cercautente)or die ("Database non trovato: " . mysql_error());
$esito = mysql_num_rows($query_result);
Prova, prima dell'if, a stampare (ad esempio con la echo) la variabile $esito. Poi se varia da browser a browser, l'errore è quello... altrimenti si rischia di prendere una strada sbagliata :mrgreen:
Ciao!
stampa in entrambi i browser 1
quindi $esito lo riconosce
Se stampa il valore corretto allora non è possibile che esegua l'echo all'interno dell'else. Ripeto: non potresti indicare l'indirizzo della pagina in questione così da poter verificare direttamente?
Cosa c'è prima di quel pezzo di codice? Qualcosa che possa generare output, anche solo degli spazi vuoti?
Aggiungere un error_reporting(E_ALL); in cima alla pagina potrebbe inoltre essere d'aiuto.
Inoltre occhio al doppio session_start(), la sessione va avviata una volta sola.
ho aggiunto in cima alla pagina error_reporting(E_ALL); e non mia ha dato nessun errore ,
inoltre ho eliminato parte del codice
e continua a darmi il messaggio username o password erratiCodice PHP:/*
if ( $ricorda == "ON") {
session_start();
$cok = $myusername."789456".$pass;
setcookie("cookie",$cok,time()+31536000,"/");
}
*/
mah ??????
L'indirizzo da solo non basta, dovresti dirci perlomeno le credenziali con cui provare, e come passarle. Inoltre indicare tutto il codice dello script anziché piccole porzioni non guasterebbe.
P.s.: quando scrivi porzioni di codice nel forum usa l'apposita formattazione: se è codice PHP, racchiudilo tra [php] e [/php]
ok , ho provato a farlo funzionare e visualizzala pagina solo se elimino
come mai ?Codice PHP:
$ricorda = mysql_real_escape_string($_POST['ricorda']); //controlliamo autologin
if ( $ricorda == "ON") {
session_start();
$cok = $myusername."789456".$pass;
setcookie("cookie",$cok,time()+31536000,"/");
}
Ci vuole il codice dell'intera pagina, altrimenti non si può dire.
Ho risolto, molte volte pensiamo ad altro e non alle cose banali,
ho portato il livello di protezione da MEDIO-ALTO a Medio e tutto funziona correttamente.
Scusatemi e grazie per la Vs. collaborazione