Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] przekazanie id sesji nie działa
Forum PHP.pl > Forum > Przedszkole
kosmic
moze ktos mi powiedziec dlaczego po zalogowaniu sie nie chce mi wyswietlic w pasku przegladarki id sesji ?
to moj skrypt logowania:
Kod
<?php
      
      if (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'];
              $ph = md5($_POST['haslo']);
              $query = "SELECT login, haslo FROM user WHERE login='$login' AND haslo='$ph'";
              $result = @mysql_query($query);
              $row = mysql_num_rows($result);
              if ($row == 1) {
                  $_SESSION['haslo']= $ph;
                  $sid = session_id();
                  header("Location: admin1.php?PHPSESSID=$sid");
                  } else {
                  $message .= '<font class="blad">Podales zle dane...!</font><br/>';
                  }
                  unset($_POST['haslo']);
          }
      }
      ?>


no i po zalogowaniu mam tylko to: 127.0.0.1/galeria_zdj/log/admin1.php?PHPSESSID=
bez id sesji sad.gif

ale jak juz np najade na jakis link na tej stronie to juz normalnie jest w adresie id sesji:
127.0.0.1/galeria_zdj/log/kategor.php?PHPSESSID=ecacaf2e2a89cfc5faef91aaca24e9b4

nie wiem dlaczego nie chce mi przekazac tego wraz z załadowaniem strony admin1.php

moze ktos pomóc ?
a to strona z formularzem
Kod
<?php
include_once('my_db_connect.php');
include_once('loguj_new.php');
?>
<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;
    }
?>
</div>
Ar2r
Nie widzę abyś aktywował w skrypcie obsługę sesji: session_start();
kosmic
Cytat(Ar2r @ 25.11.2007, 16:46:36 ) *
Nie widzę abyś aktywował w skrypcie obsługę sesji: session_start();


reszty nie treba smile.gif
dzieki smile.gif

miałem to wczesniej ale usunołem bo minimalizowałem skrypt i zapomnialem ze to musi zostać

pozdro

jeszcze jakbys mogl sie odniesc do mojego temtu troszke ponizej, w ktorym pisze o tym ze po zalogowaniu kopiując link moge na niego potem wejsc... bez wzgledu na to ile minie czsu sad.gif

a nie chce zeby tak bylo.... ze jak np. po zalogowaniu przkierowuje mnie na stone admin1.php... to jak skopiuje ten link zeby nie było mozliwe wejscie po wylaczeniu przgladarki albo po jakims czasie....
Ar2r
Jeśli masz włączoną obsługę cookie nie musisz przenosić identyfikatora w sposób jawny. Możesz przekazywać w zmiennych sesji $_SESSION['xxxxx'].
Jeśli chcesz się trzymać swojego sposobu to najprościej:
Po zamknięciu przeglądarki, ponownym jej uruchomieniu i otworzeniu strony z aktywacją sesji, jej identyfikator będzie już inny. Wystarczy że porównasz id wygenerowany przez przeglądarkę z tym przekazanym w linku.
Możesz rozszerzyć tabelę o pola: identyfikator sesji i czas ostatniej aktywności.
Po poprawnej autoryzacji zapisywałbyś id sesji wygenerowany przez przeglądarkę do tabeli dla danego użytkownika, potem na stronach które wymagają autoryzowanego dostępu sprawdzał czy przekazywany id sesji istnieje w tabeli i jego czas nie wygasł.
-kosmic-
a mozesz mi bardziej to przyblizyc..

czyli dokładnie co zrobic questionmark.gif

bo wzoruje sie na jakims przykladnie gdzie po kilku minutach jak chce sie wejsc bezposrednio wklejajac linkto wywala komunikat ze nie mozna..
no i przegladalem wszystko, ale nie ma nigdzie tam nic o czasie itp..

po prostu nadaje sesji id i tyle...

no i nie wiem jak sie z ty uporac
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.