Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] sesje ciag dalszy
kosmic
post
Post #1





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 31.10.2007

Ostrzeżenie: (0%)
-----


a wiec ciagle walcze z tym pojeciem i nie ma efektu w moim projekcie....

mianowicie chodzi o to ze oparłem swoj skrypt logowania i nadawania id sesji na bazie innego...
no i co mnie dziwi to to ze jak sie zaloguje u siebie to ciagle moge chodzic miedzy stronami, nawet jak po 15 minutach nic nie robie

natomiast w skrypcie na którym bazuje jesli sie zaloguje to pokilku minutach bezczynnosci po prostu nie mam dostepu i musze sie logowac jeszcze raz...

no i nie wiem dlaczego tak jest (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
moze zerknijcie i moze cos wymyslicie aby u mnie tez tak bylo (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

to moj skrypt logowania:
CODE
<?php
ob_start();
session_start();
include_once('my_db_connect.php');

if (isset($_POST['login']) && isset($_POST['haslo'])) {
if (empty($_POST['login']) && empty($_POST['haslo'])) {
$message .= '<font class="blad">Musisz podac login i haslo</font><br/>';
} else {
$login = $_POST['login'];
$pass = md5($_POST['haslo']);
$query = "SELECT haslo,login FROM user WHERE haslo='$pass' AND login='$login'";
$result = @mysql_query($query);
$row = mysql_num_rows($result);
if ($row > 0) {
$_SESSION["haslo"] = $pass;
$sid = session_id();
header("Location: admin1.php?PHPSESSID=$sid");
exit();
} else {
$message .= '<font color="red">Podales zle dane...!</font><br/>';
}
unset($_POST['haslo']);
}
}
?>
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />
<title>. : : LOGOWANIE : : .</title>
</head>
<body>

<form method="post" action="<? echo $PHP_SELF; ?>" enctype="multipart/form-data">
<TABLE ALIGN="CENTER" BORDER="0">
<tr>
<td colspan="2"><b>Logowanie użytkownika:</b></td>
<tr>
<td colspan="2">&nbsp;</td></tr>
<TR>
<TD ALIGN="RIGHT" >Login:</td>
<td><input type="text" name="login" size="30"></td>
</tr>
<tr>
<td align="right" >Haslo:</td>
<td><input type="password" name="haslo" size="30"></td>
</tr>
<tr>
<td align="right" class="Uni_01">&nbsp;</td>
<td><p align="center"><input style="font-weight: bold;" type="submit" name="logowanie" value="loguj"></td>
</tr>
</table>
</form>
</body>
</html>
<div align="center">
<?php
if(isset($message)) {
echo $message;
}
?>
<?
ob_end_flush();
?>
</div>


a to skrypt logowania na któryu bazuje
CODE
<?
ob_start();//do panelu administracyjnego
session_start();
$s_id = session_id();
setcookie("odwiedziny","zaliczone",time()+3600);//do licznika odwiedzin

//poł±czenie z baz± danych
include("conf.php");
@$con=mysql_connect ("$adres_serwera_mysql","$nazwa_uzytkownika_mysql","$haslo_do_bazy");
mysql_select_db("$nazwa_bazy_danych");
if (mysql_error()) {include("komunikaty/mysql_bl.php");exit;}
//koniec poł±czenia z baz± danych

require("prefix.php");//dodaje listę prefiksów dla tabel

include("include/ustawienia_conf.php");//pobieranie ustawień ... conf ... z bazy danych
if($run_gzip === "T") {
require("include/gzip.php");//dodaje kompresję gzip
}

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<LINK REL="Stylesheet" HREF="motywy/<?echo $motyw;?>/style/style.css" TYPE="text/css">
<TITLE></TITLE>
</HEAD>

<body>

<table class="tabela_centralna"><tr><td>

<!-- Tre¶ć strony -->

<!-- główna ramka tre¶ci strony -->

<TABLE BORDER="0" WIDTH="<?echo $szerokosc_ramki_glownej;?>" CELLPADDING="0" CELLSPACING="0"><tr>


<!-- lewy blok -->
<td width="<?echo $mod_lew;?>" valign="top" align=left>
<?include("mods/lewy_blok.php");?>
</td>
<!-- koniec lewego bloku -->


<!-- ¶rodkowy blok -->
<td WIDTH="<?echo $mod_srod;?>" valign="top" align="center">
<? include("mods/center_blok.php");?>
</td>
<!-- koniec ¶rodkowego bloku -->

<!-- prawy blok -->

<?include("mods/prawy_blok.php");?>

<!-- koniec prawego bloku -->

</tr></table>

<!-- koniec głównej ramki tre¶ći strony -->


<!-- koniec tre¶ci strony -->

<!-- stopka -->

<TABLE BORDER="0" WIDTH="1" height="<?echo $odleglosc_stopki_od_ramki;?>"CELLPADDING="0" CELLSPACING="0"><tr><td></td></tr></table>

<? require("include/menu_dol.php"); ?><!-- menu podstron -->
<? require("inc_roz/stopka.php"); ?>

<!-- koniec stopki -->


</td></tr></table>
</body></html>

<? if ($run_gzip === "T") {ob_end_flush();} ?>

no i w miejsce <lewy bok> jest to ładowane:
CODE
<?if ($pokaz_admin === "T") {?>


<TABLE class="szer_lew_gl" BORDER="0" WIDTH="230" CELLPADDING="0" CELLSPACING="0">
<tr>
<td class="rog_g_lew" width="5"></td>
<td class="pasek"><? echo $mod_2;?></td>
<td class="rog_g_pra" width="5"></td>
</tr>
</table>
<TABLE class="szer_lew_gl" BORDER="0" WIDTH="230" CELLPADDING="0" CELLSPACING="0">
<tr>
<td class="ramka_l" width="1"></td>
<td class="ram_d_gl">
<?
//weryfikacja hasła

if (isset($_POST['pass'])){
$pass = md5($_POST['pass']);
$sprawdzanie_hasla = mysql_query ("SELECT haslo FROM $hasla WHERE haslo='$pass'");
$licz1=mysql_num_rows($sprawdzanie_hasla);
if ($licz1 > 0){

$_SESSION["pass"]= $pass;
$sid=session_id();
header("Location: admin/start.php?PHPSESSID=$sid");
exit();
}}
//koniec obsługi weryfikacji hasła
?>

<FORM ACTION="<? echo $PHP_SELF;?>" METHOD=POST enctype="multipart/form-data">
<br />
Podaj hasło<br>
<input class="form20" type="password" name="pass" value="" />

<INPUT class="form21" TYPE="submit" value="Zaloguj">
</FORM>

</td>
<td class="ramka_p" width="1"></td>
</tr></table>

<TABLE class="szer_lew_gl" BORDER="0" WIDTH="230" CELLPADDING="0" CELLSPACING="0">
<tr>
<td class="pasek_dol"></td>
</tr>
</table>

<?}?>


no i tak to wyglada (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
wiec po zalogowaniu przenosze sie na strone admin.php no i jest tak jak pisałem na poczatku, natomiast w tym skrypcie co na nim bazuje jak po zalogowaniu sie przeniesie na strone index.php to po kilku minutach bezczynnosci, klikajac na jakikolwiek link, czy odswiezajac strone wywala brak dostepu (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

ma ktos jakies pomysły dlaczego u mnie to nie działa (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) tak jak bym chcial (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) jak tam (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

no i co nikt nie jest w stanie mi pomóc (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

ma ktoś moze jakis pomysł ?
jak sie z tym uporać (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
--kosmic--
post
Post #2





Goście







kurde to moze inaczej...

mam skrypt logowania, w ktorym rozpoczynam sesje 'haslo' no i po zalogowanu przenosi mnie na strone admin1.php... na tej stronie zas mam na samym poczatku weryfikacje sesji(hasła)... no i niestety to sie nie sprawdza (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) i ciagler moge wchodzic na ta strone.... nawet jak zamke przegladarke itp (mowa o skopiowaniu linku)... co jest tu wazne... to to ze jak dam wyloguj to jest ok, nie moge wejsc jak chce wejsc po linku, ale jak zamkne przegladarke i otworze ja spowrotem to juz jakbym sie nie wylogowywal i normalnie z lniku wchodze na strone admin1.php

co mnie dziwi... i nie wiem co i jak (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
mecze sie z tym i nie umiem sobie poradzic (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

to moj skrypt logowania: login.php
Kod
<?php
ob_start();
session_start();
include_once('my_db_connect.php');

if (isset($_POST['login']) && isset($_POST['haslo'])) {
    if (empty($_POST['login']) && empty($_POST['haslo'])) {
        $message .= '<font class="blad">Musisz podac login i haslo</font><br/>';
        } else {
        $login = $_POST['login'];
        $pass = md5($_POST['haslo']);
        $query = "SELECT haslo,login FROM user WHERE haslo='$pass' AND login='$login'";
        $result = @mysql_query($query);
        $row = mysql_num_rows($result);
        if ($row == 1) {
            $_SESSION['haslo'] = $pass;
            $sid = session_id();
            header("Location: admin1.php?PHPSESSID=$sid");
            exit();
            } else {
            $message .= '<font color="red">Podales zle dane...!</font><br/>';
            }
    }
}
?>
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />
<title>. : : LOGOWANIE : : .</title>
</head>
<body>

<form method="post" action="<? echo $PHP_SELF; ?>" enctype="multipart/form-data">
    <TABLE ALIGN="CENTER" BORDER="0">
        <tr>
            <td colspan="2"><b>Logowanie użytkownika:</b></td>
        <tr>
            <td colspan="2"> </td></tr>
        <TR>
            <TD ALIGN="RIGHT" >Login:</td>
            <td><input type="text" name="login" size="30"></td>
        </tr>
        <tr>
            <td align="right" >Haslo:</td>
            <td><input type="password" name="haslo" size="30"></td>
        </tr>
        <tr>
            <td align="right" class="Uni_01"> </td>
            <td><p align="center"><input style="font-weight: bold;" type="submit" name="logowanie" value="loguj"></td>
        </tr>
    </table>
</form>
</body>
</html>
<div align="center">
<?php
if(isset($message)) {
    echo $message;
    }
?>
<?
ob_end_flush();
?>
</div>


a to plik weryfikacji hasła (sesji) - wer_pass.php
Kod
<?
if (isset($_SESSION['haslo'])){
    $pass = $_SESSION['haslo'];
    $spr_hasla = @mysql_query ("SELECT haslo FROM user WHERE haslo='$pass'");
    $wynik = @mysql_num_rows($spr_hasla);
    if ($wynik < 1){
        echo "komunikat o braku dostepu";
exit;
        }
    } else {
        echo "komunikat o braku dostepu";
exit;
        }
?>


poczatek pliku admin1.php
Kod
?php
session_start();
$s_id = session_id();
require('my_db_connect.php');
require('wer_pass.php');
include_once('upload.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>


PROSZE O POMOC BO MNIE SZLAK TRAFIA (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) !!!!!!!!!!!!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 01:38