Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php]Dołączanie sesji
Lee
post
Post #1





Grupa: Zarejestrowani
Postów: 319
Pomógł: 0
Dołączył: 11.04.2006
Skąd: Chojnów

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


Mam taki kod
  1. <?php
  2. echo '<table cellspacing="3" cellpadding="0" align="left">
  3.  <form action="administracja/index.php" method="post">
  4. <tr><td class="text">Login: </td><td><input type="text" name="uzytkownik" size="20"></td></tr>
  5. <tr><td class="text">Hasło: </td><td><input type="password" name="haslo" size="20"></td></tr>
  6. <tr><td colspan="2"><input type="submit" name="zaloguj" value="Zaloguj"></td></tr>
  7.  </form>
  8.  </table><br><br>';
  9.  
  10.  
  11. ?>

jak mam go zmodyfikować, żeby po wciśnięciu Zaloguj przesyłało mi id sesji w urlu questionmark.gif wiem, że coś w action ale nie wiem co...

Ten post edytował Lee 17.04.2006, 13:54:12


--------------------
Nie pomagam w sprawach php na GG i PW od tego jest forum!
Go to the top of the page
+Quote Post
strife
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 605
Pomógł: 96
Dołączył: 22.10.2004
Skąd: UK

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


  1. <?php
  2.  
  3. // ...
  4. echo '<form action="administracja/index.php?sid=' . session_id() . '" method="post">   ';
  5. // ...
  6.  
  7. ?>

O to chodzi?


--------------------
Go to the top of the page
+Quote Post
Lee
post
Post #3





Grupa: Zarejestrowani
Postów: 319
Pomógł: 0
Dołączył: 11.04.2006
Skąd: Chojnów

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


czemu wszędzie pisżą, żeby jakieś SID dopisiwać skoro to nie działa :| na stronie http://pl2.php.net/manual/pl/ref.session.php, w książce Heliona php i MySQL Tworzenie WWW też...


--------------------
Nie pomagam w sprawach php na GG i PW od tego jest forum!
Go to the top of the page
+Quote Post
LBO
post
Post #4





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

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


Może to jest przyczyną?
Go to the top of the page
+Quote Post
Lee
post
Post #5





Grupa: Zarejestrowani
Postów: 319
Pomógł: 0
Dołączył: 11.04.2006
Skąd: Chojnów

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


pytałem się o to, bo mam problem chyba z sesjami. Otóż gdy się zaloguje do mojego panelu to strona główna działa ok, ale gdy klikne w coś wyskakuje komunikat jak gdybym wpisał złe dane

Kod administracja.php
  1. <?php
  2. //...
  3. if (empty($_SESSION['uzytkownik'])){
  4.  echo '<table cellspacing="3" cellpadding="0" align="left">
  5.  <form action="administracja/index.php?sid=' . session_id() . '" method="post">
  6. <tr><td class="text">Login: </td><td><input type="text" name="uzytkownik" size="20"></td></tr>
  7. <tr><td class="text">Hasło: </td><td><input type="password" name="haslo" size="20"></td></tr>
  8. <tr><td colspan="2"><input type="submit" name="zaloguj" value="Zaloguj"></td></tr>
  9. </form></table><br><br>';
  10. }
  11.  if (!empty($_GET['action']) && strip_tags($_GET['action']) == 'wyloguj'){
  12.  unset($_SESSION['uzytkownik']);
  13. echo '<table cellspacing="3" cellpadding="0" align="left"><tr><td><p class="text" align="center">Zostałeś wylogowany</p></td></tr></table>';
  14. }
  15. //...
  16. ?>


kod administracja/index.php
  1. <?php
  2. // Zabezpiecza dane przed xss
  3. $_POST['uzytkownik'] = strip_tags($_POST['uzytkownik']);
  4. $_POST['haslo'] = strip_tags(md5($_POST['haslo']));
  5. $uzytkownik = $_POST['uzytkownik'];
  6. $haslo = $_POST['haslo'];
  7.  
  8.  // Chyba nie trzeba tłumaczyć
  9. $_SESSION['uzytkownik'] = $uzytkownik; 
  10. $_SESSION['haslo'] = $haslo;
  11.  
  12. // Wybiera hasło z bazy danych do porównania z wpisanym  
  13. $zapytanie = mysql_query("SELECT * FROM main_admins WHERE nick='$uzytkownik'");
  14. while ($wynik = mysql_fetch_array($zapytanie)){
  15. $aHaslo = $wynik['pass'];
  16. }
  17.  
  18.  // Jeżeli hasło jest prawidłowe - początek "Prawidłowe Logowanie"
  19. if ($haslo == $aHaslo){ 
  20.  echo '<table style="width: 640px;" cellspacing="2" cellpadding="0">
  21. // Wyloguj
  22.  <tr><td align="right" class="text"><a href="../administracja.php?action=wyloguj"><font color="'.$color[3].'">Wyloguj <b>['.$_SESSION['uzytkownik'].']</b></font></a></td></tr>
  23.  <tr><td class="text">Opcje administratora:</td></tr> 
  24.  <tr><td><hr></td></tr>
  25.  <tr><td>';
  26.  
  27. // Pobiera dostęp do opcji z bazy danych
  28.  $zapytanie = mysql_query("SELECT * FROM main_admins WHERE nick='$uzytkownik'");
  29.  while ($wynik = mysql_fetch_assoc($zapytanie)){
  30. $acces = $wynik['acces'];
  31.  }
  32. // Jeżeli ma pełen dostęp
  33.  if ($acces == 'god'){
  34.  
  35.  // Jeżeli nie odnosi się do żadnego modułu wyświetla ich liste
  36. if (!isset($_GET['mod'])){
  37. echo '<p class="text"><a href="'.$PHP_SELF.'?mod=dzialy&sid=' . session_id() . '">Działy</a></p>';
  38. }
  39. // Przykładowo, jeżeli odnosi się do modułu "Działy" to wyświetla opcje
  40.  if (isset($_GET['mod']) == 'dzialy'){
  41. // Opcje
  42. }
  43. }
  44.  // Jeżeli wchodzi jako tester (demo panelu)
  45.  else if ($acces == 'tester'){
  46.  // Jakieś tam opcje wyboru
  47.  }
  48.  echo '</td></tr></table>'; 
  49.  } // Zakończenie "Prawidłowe Logowanie"
  50.  
  51.  // Jeżeli wpiszemy zły login lub hasło to wyświetla błąd
  52.  else {
  53. echo '<p class="text" align="center">Podałeś niepoprawne dane<br><a href="../administracja.php">Powrót</a></p>';
  54.  }
  55. ?>

co mam nie tak ?

EDIT: poprawiłem wyląd kodu, bo mógł być nieczytelny

Ten post edytował Lee 17.04.2006, 15:54:09


--------------------
Nie pomagam w sprawach php na GG i PW od tego jest forum!
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: 19.08.2025 - 15:37