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 sad.gif
moze zerknijcie i moze cos wymyslicie aby u mnie tez tak bylo 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 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 sad.gif

ma ktos jakies pomysły dlaczego u mnie to nie działa questionmark.gif tak jak bym chcial questionmark.gif jak tam questionmark.gif

no i co nikt nie jest w stanie mi pomóc questionmark.gif

ma ktoś moze jakis pomysł ?
jak sie z tym uporać 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 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 sad.gif
mecze sie z tym i nie umiem sobie poradzic 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 exclamation.gif!!!!!!!!!!!!
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 03:21