Sprawa dosc dziwna i nietypowa, bo przeciez przegladarka nic nie ma do php, a konkretniej do mojego sktyptu logownia, i jego ciasteczek. A jednak cos ma.
mam skrypt logowania z "zapamietywaniem". Jego najwazniejsza czescia jest ten plik:
<?php
function zalogowany ( $sesja=0, $login_php=0, $id=0 )
{
echo"<span class=\"zw2\">Witaj <b>".$sesja."</b> na stronie !<br> <a href=\"".$login_php."/edycja_profil.php?mode=zobacz_profil&id=".$id."\">Profil</a><br>
<a href=\"".$_SERVER['PHP_SELF']."?mode=wyloguj\">wyloguj</a><br>";
if( isset( $_COOKIE['auto'] ) ) {
<a href=\"".$_SERVER['PHP_SELF']."?mode=usun_ciasteczka\">Usuń ciasteczka</a></span>
";
}
else
{
<a href=\"".$_SERVER['PHP_SELF']."?mode=zapamietaj\">Zapamietaj mnie</a></span>
";
}
}
if( $_SESSION['log'] )
{
echo zalogowany
( $_SESSION['log'], $login_php, $id); }
elseif ( $_POST['mode'] == 'spr' )
{
if ( !isset( $_POST['login'] ) ) {
echo"Nie masz dostępu do tego modułu"; }
else
{
if ( $_POST['submit'] )
{
$wyszukaj = mysql_query("SELECT * FROM users WHERE login='$_POST[login]' AND haslo='$_POST[pass]' LIMIT 1"); {
$_SESSION['flaga'] = $wynik2['flaga'];
$_SESSION['id'] = $wynik2['id'];
$_SESSION['haslo'] = $wynik2['haslo'];
$_SESSION['ost_log'] = $wynik2['ostatnie_logowanie'];
}
if ( empty ( $_POST['login'] ) ) {
echo "<span class='zw3'>nie podano loginu<br></span>"; $lo=1;
}
if ( empty ( $_POST['pass'] ) ) {
echo "<span class='zw3'>nie podano hasla<br></span>"; }
#poprawny login i haslo, utworzenie sesji z loginem usera
elseif ( $wynik == 1 )
{
$_SESSION['log'] = $_POST['login'];
$data = date("Y-m-d H:i:s");
/*zmiana daty ostatniego logowania*/
$sql0 = "UPDATE users SET ostatnie_logowanie=\"$data\" WHERE id=$_SESSION[id]";
/**/
if( !empty( $_POST['auto'] ) ) {
}
}
elseif ( isset ( $_POST['login'] ) && isset ( $_POST['pass'] ) && $lo != 1
) {
echo "<span class=\"zw3\">Niepoprawne dane<br></span>"; $spr=1;
}
if ( empty ( $_POST['login'] ) || empty ( $_POST['pass'] ) || $spr == 1
) echo"<span class=\"zw2\"><a href=\"$login_php/logowanie.php?mode=add_user\">Spróbuj ponownie</a><br>nie masz jeszcze konta?? <a href=\"$login_php/logowanie.php?mode=rejestruj\">zarejestruj sie</a></span>";
}
if ( $_SESSION['log'] )
{
header("Location:$_SERVER[PHP_SELF]"); }
}
}
elseif( isset( $_COOKIE['auto'] ) ) {
$wyszukaj = mysql_query( "SELECT * FROM users WHERE login='$_COOKIE[auto]'" ); if( $wynik ==1 )
{
$_SESSION['flaga'] = $wynik2['flaga'];
$_SESSION['id'] = $wynik2['id'];
$_SESSION['haslo'] = $wynik2['haslo'];
$_SESSION['ost_log'] = $wynik2['ostatnie_logowanie'];
}
// $_SESSION['log'] = $_COOKIE['auto'];
$data = date("Y-m-d H:i:s");
/*zmiana daty ostatniego logowania*/
$sql0 = "UPDATE users SET ostatnie_logowanie='$data' WHERE id=$_SESSION[id]";
/**/
echo zalogowany
( $_SESSION['log'], $login_php, $id); }
else
{
}
}
else
{
<div>
<script type=\"text/javascript\" src=\"js/caps.js\">
</script>
<form action=\"$_SERVER[PHP_SELF]\" method=\"post\">
<div id=\"warning\" style=\"display: none;\"><span class=\"zw2B\">Masz włączony klawisz Caps lock !</span></div>
<span class=\"zw3\">Login:</span>
<input type=\"text\" size=\"12\" name=\"login\" />
<span class=\"zw3\">Hasło:</span>
<input type=\"password\" size=\"12\" name=\"pass\" onkeypress=\"capsDetect(arguments[0]);\" />
<span class=\"zw3\">Zapamiętaj mnie:</span><input name=\"auto\" type=\"checkbox\" value=\"on\" />
<input type=\"hidden\" name=\"mode\" value=\"spr\" />
<input class=\"kolorowy\" type=\"submit\" name=\"submit\" value=\"Zaloguj\" />
</form>
<span class=\"zw3\"><a href=\"".$login_php."/logowanie.php?mode=rejestruj\">zarejestruj sie</a> | </span>
<span class=\"zw3\"><a href=\"".$login_php."/logowanie.php?mode=uzyj_wsk\">zapomnialem hasla</a></span>
</div>
";
}
if ( $_GET['mode'] == 'wyloguj' )
{
header("Location:".$_SERVER['PHP_SELF'].""); }
if ( $_GET['mode'] == 'usun_ciasteczka' )
{
header("Location:".$_SERVER['PHP_SELF'].""); }
if ( $_GET['mode'] == 'zapamietaj' )
{
header("Location:".$_SERVER['PHP_SELF'].""); }
?>
pod ie, wszytsko pieknie hula. Pod ff, skrypt sie wsyypuje, w pewnym momencie.
to jest tak
mam sobie w/w plik includowany do pliku ktory wyswietla top strony. index.php, ma ten top, i np plik forum/forum.php (a wiec o katalog wyzej) tez ma ten sam top.
w ie, obojetnie czy jestem w index.php czy o katalog wyzej czyli forum/forum.php skrypt dziala bez zarzutu.
pod ff, sie wysypuje w momencie, gdy wejde o katalog wyzej ... nieusuwa w tedy ciasteczka. Nie wiem czym to jest spowodowane, ale cos musi byc.
Szukalem na google o jakis roznicach w ie i ff ziazanych z ciasteczkami i nic ...
macie jakies pomysly czemuz tak sie smutno dzieje ... ?