Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php/sesje], Kłopot z sesjami
wężyk
post 20.03.2005, 00:49:04
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 12.03.2005

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


Witam wszyzdkich mam klopot z przesłaniem sesji tzn
W php.ini ustawiłem sesie na auto start no i gdy odpalam locala to w pasku adresu niemam wyswietlonego id session ani zmienne sesji nie sa rejestrowane.
Za pomoc dziękuję.
Go to the top of the page
+Quote Post
Darti
post 20.03.2005, 01:52:15
Post #2





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


numer sesji wcale nie musi byc doklejany do adresu - sprawdz tablice $_SESSION takim kodem:
  1. <?php
  2. print_r($_SESSION);
  3. ?>

i jeśli wyskoczy Ci array a w środku numer sesji to znaczy że masz sesje włączone


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
-gosc-
post 22.03.2005, 15:21:08
Post #3





Goście







no ja mam podobny problem i jak wpisze
Kod
print_r($_SESSION);

to pokazuje mi:
Array ( )

Jak zrobić żeby po zalogowaniu na login i hasło mieć cały czas login jaka zmienną globalną (dostępną na każdej stronce) ?
Go to the top of the page
+Quote Post
Coyote
post 22.03.2005, 15:51:34
Post #4





Grupa: Zarejestrowani
Postów: 151
Pomógł: 0
Dołączył: 20.02.2005
Skąd: Poznań

Ostrzeżenie: (30%)
XX---


$_SESSION['login'] = login questionmark.gif


--------------------
Go to the top of the page
+Quote Post
Adiasz
post 22.03.2005, 16:14:47
Post #5





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 28.02.2004

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


Cytat(gosc @ 2005-03-22 16:21:08)
no ja mam podobny problem i jak wpisze
Kod
print_r($_SESSION);

to pokazuje mi:
Array ( )

a session_start(); dales?
Go to the top of the page
+Quote Post
-gosc-
post 23.03.2005, 10:58:23
Post #6





Goście







dałem session_start() w stronce do której przesyłam dane z formularza dotyczące logowania i nic.
Go to the top of the page
+Quote Post
-Guest-
post 24.03.2005, 14:51:23
Post #7





Goście







po ustawieniu opcji
Kod
session.use_trans_sid = 1

zadziałało w końcu , ale mam dwa problemy:

1. jeśli przechodze zwykłym odnośnikiem
Kod
<A HREF="druga.php">druga</A>
to działa,
a jeśli
Kod
header ('Location: druga.php');
to już nie działa

a potrzebuje zrobić przez header sad.gif

2. jak ustawiłem session.use_trans_sid = 1 to przesyła mi w adresie ID sesji a jak zrobić zeby przesyłało jakoś inaczej (żeby nie było widać w adresie stronki).

Pozdrawiam
Go to the top of the page
+Quote Post
Wave
post 24.03.2005, 15:20:12
Post #8





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 13.01.2005

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


Logowanie:
  1. <?php
  2.  
  3. session_register(&#092;"zmienna\");
  4. ?>

Na każdej innej stronie:
  1. <?php
  2. ?>

Wylogowanie:
  1. <?php
  2. ?>

To musi działać. biggrin.gif
Daje przykładowy skrypt logowania:
  1. <?
  2. $log='admin';
  3.  
  4. $pas='test';
  5.  
  6. if($_GET['op'] == 'zaloguj') 
  7. {
  8.  
  9.  
  10. if ($_POST['login'] == $log && $_POST['pass'] == $pas)
  11. {
  12.  
  13. session_register(&#092;"login\");
  14.  
  15.  
  16. header(&#092;"Location: ?op=index\");
  17.  
  18. } 
  19. else if(isset($_POST['pass']) || isset($_POST['login'])) echo('Błędny login lub hasło!');
  20.  
  21.  
  22. echo('<form method=\"POST\" action=\"?op=zaloguj\">Login<input type=\"text\" name=\"login\" size=\"20\">
  23. Hasło<input type=\"password\" name=\"pass\" size=\"22\"><input type=\"submit\" value=\"Zaloguj\" name=\"zaloguj\"></form>');
  24. }
  25.  
  26.  
  27. if($_GET['op'] == 'wyloguj')
  28. {
  29. header('Location: ?op=zaloguj');
  30. exit();
  31. }
  32.  
  33.  
  34. if($_GET['op'] == 'index')
  35. {
  36.  
  37.  
  38.  
  39. if ($_SESSION['login'] != $log)
  40. {
  41. header('Location: ?op=zaloguj');
  42. }
  43. echo('Witaj ' .$_SESSION['login']. ' w Strefie Zamkniętej!<br><A href=\"?op=wyloguj\">Wyloguj</A>');
  44.  
  45. }
  46. if ($_SESSION['login'] == $log && empty($_GET['op'])) header('Location: ?op=index');
  47. else if(empty($_GET['op'])) header('Location: ?op=zaloguj');
  48.  
  49. ?>
Go to the top of the page
+Quote Post
-Guest-
post 24.03.2005, 15:39:09
Post #9





Goście







mam tak jak piszesz
Kod
<?php

session_start();
session_register("zmienna");
?>


Na każdej innej stronie:
Kod php:
1
2
3
<?php
session_start();
?>


ale header mi nie działa jak pisze

Kod
header ("Location: druga.php");

moze musze dodac cos po znaku ? do headera zeby przesylac ID sesji questionmark.gif
Go to the top of the page
+Quote Post
-gosc-
post 24.03.2005, 15:48:47
Post #10





Goście







teraz zauważyłem że w katalogu
c:\PHPsession tworzą mi sie 2 sesje po jednym zalogowaniu i po wylogowaniu jedna znika a druga dalej zostaje i ta która znika była pusta, a ta która została ma to co mi potrzebne czyli zmienną $user.

Mam tak:
plik.1
Kod
<?php
//ob_start(); // żeby dzialaly headery jak są echo lub print wczesniej
session_start();
$_SESSION["user"]=$_POST['uzytkownik'];
header ("Location: plik.2");
?>

plik.2
Kod
<?php
session_start();
echo $_SESSION["user"];
i PUSTO nic sie nie wyswietla
?>
Go to the top of the page
+Quote Post
-gosc-
post 24.03.2005, 16:12:46
Post #11





Goście







juz zauwazylem ze
Kod
header
tworzy mi drugą sesje, w której nie ma juz tych zmiennych.
Wiec jak mam zrobić zeby ten header wysylal poprzednią sesje i nie tworzyl kolejnej??
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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 00:07