Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]czy sesję można nazwać?
Forum PHP.pl > Forum > Przedszkole
GoOx
Witam,

jak w temacie.

pytam się ponieważ mam logowanie na sesjach oraz system edycji plików na sesjach a jak dam session_destroy();

to od razu wylogowują się oraz plus bo hasło z panelu edycji się nie zapamiętuje. czy jest opcja wyłączenia jednej sesji?

erix
A tak po polsku bardziej...?

Cytat
czy jest opcja wyłączenia jednej sesji?

To nie kasuj całej sesji, tylko wymazuj zmienne. I jedną "sesję" trzymaj w osobnym kluczu tablicy sesyjnej:

  1. $_SESSION['pierwsza']['bkdfjbkldfg'];
  2. $_SESSION['druga']['sgdfgdfg'];
  3.  
  4. // nie
  5.  
  6. // tylko
  7. $_SESSION['pierwsza'] = array();
GoOx
nie rozumiem. jak poprawic ten kod?

  1. <?
  2. ?>
  3.  
  4. <form action='?str=admin&spr=true' method='post'>
  5. Hasło : <input type="text" name="haslo" />
  6. <input type="submit" value='OK' />
  7. </form>
  8.  
  9. <?php
  10.  
  11. if(!empty($_POST['haslo']))
  12. {
  13. $haslo = $_POST['haslo'];
  14. $truehaslo = 'haslo';
  15.  
  16.  
  17. if(($haslo == $truehaslo) or ($_SESSION['sesja'] == 'zal')){
  18. $_SESSION['sesja'] = 'zal';
  19. echo "Witaj w edytorze strony</br>
  20. plik który chcesz edytowac:</br>
  21. <form method=post>
  22. <input type=text name=plik >
  23. <input type=submit value='OK' />
  24. </form>";
  25. }
  26. else if(isset($haslo)) {
  27. echo "zle wpisano haslo";
  28. }
  29. }
  30.  
  31. ///// otwieranie pliku////
  32. if(isset($_POST['plik']))
  33. {
  34. $plik = $_POST['plik'];
  35. $_SESSION['plik'] = $plik;
  36.  
  37.  
  38. echo '<form method=post>
  39. <textarea cols=100 rows=20 name=newcontent>';
  40.  
  41. echo $file;
  42.  
  43. echo '</textarea>
  44. <input type=submit value=zapisz name=savecontent>
  45.  
  46. </form>';
  47.  
  48. }
  49.  
  50.  
  51. if(isset($_POST['savecontent']))
  52. {
  53. stripslashes(file_put_contents($_SESSION['plik'], $_POST['newcontent']));
  54. echo 'zapisano plik';
  55. }
  56.  
erix
Czego nie rozumiesz w tym, co dostałeś ode mnie?

Na gotowca nie licz, to nie ten dział.
GoOx
tego biggrin.gif

  1. $_SESSION['pierwsza'] = array();


tą sesje trzeba zamknąć

  1. $_SESSION['sesja'] = 'zal';


więc co tam trzeba wpisać ? po prostu trzeba to napisac jeszcze raz?
nospor
.....
$_SESSION['sesja'] = null;
I już.
erix
To było właśnie zamknięcie wybranej "sesji".

Myśl - skoro jeden skrypt porusza się w obrębie jednej konkretnej tablicy, to w czym problem? Usuniesz ją całą, nie będzie podsesji, ale całość zostanie nietknięta.
GoOx
dzięki działa.
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.