Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] usuwanie el. tablicy sesyjnej
ydy10
post
Post #1





Grupa: Zablokowani
Postów: 87
Pomógł: 0
Dołączył: 29.07.2006

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


tworze tablice na sesji
  1. <?php
  2.  
  3. $ile = count( $_SESSION['ogloszenia'] );
  4. $ile++;
  5.  
  6. $_SESSION['ogloszenia'][$ile] = $_GET['id'];
  7. ?>


i chce usunac element o id podanym przez GET

  1. <?php
  2. unset( $_SESSION['ogloszenia'][$_GET['id']] );
  3. ?>


niestety niedziala (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) - nieusuwa tego el. tablica pozostaje b/z

hmm ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Cysiaczek
post
Post #2





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Sprawdz jakie wartościprzyjmuje zmienna $_GET['id'] oraz sprawdzaj poprzez isset(), czy wartosć, którą chcesz usunąc istnieje w tablicy.

Pozdrawiam.
Go to the top of the page
+Quote Post
ydy10
post
Post #3





Grupa: Zablokowani
Postów: 87
Pomógł: 0
Dołączył: 29.07.2006

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


istnieje, $_GET['id'] ma wartosc el. ktory jest w tablicy - czyli liczba
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #4





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




To się zastanów, czy wartość, czy klucz, bo z tego ci widzę, to chces zusunąc coś po wartosci, a de facto usuwasz po kluczu, z Ci się nie uda.

Pokaż więcej kodu, Albo podaj chociaż wartości tych zmiennych (jakiś przykład).

Ten post edytował Cysiaczek 3.09.2006, 10:47:05
Go to the top of the page
+Quote Post
ydy10
post
Post #5





Grupa: Zablokowani
Postów: 87
Pomógł: 0
Dołączył: 29.07.2006

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


przypisuje jak w pierwszym poscie, ze kazdy el. talicy [ogloszenia] ma indkesy po koleji nadawane 1,2,3 ...
teraz kazdy indeks, przybiera wartosc ktor jest id ogloszenia, usuwajac, podaje to id ogloszenia i chce usunac ten element.
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #6





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Przeanalizuj to. Nic się nie będzie działo, bo jak raz usuniesz klucz, to go już nie ma i musisz zabdać o to, aby $_GET['id'] miała właściwą wartosć, czyli wartosć taką samą jak nazwa istniejącego klucza w $_SESSION.
  1. <?php
  2. $_GET['id']=1; // na sztywno
  3.  
  4. $ile = count( $_SESSION['ogloszenia'] );
  5. $ile++;
  6.  
  7. $_SESSION['ogloszenia'][$ile] = $_GET['id'];
  8.  
  9. unset( $_SESSION['ogloszenia'][$_GET['id']] );
  10.  
  11. print_r($_SESSION);
  12. ?>
Go to the top of the page
+Quote Post
php programmer
post
Post #7





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 5
Dołączył: 8.11.2004
Skąd: trójmiasto

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


chyba w sesjach nie można przechowywac tablic,
a z tego co napisałeś, to próbujesz operować na tablicy:

Cytat
$_SESSION['ogloszenia'][$_GET['id']]


musisz skorzystać z funkcji serialize i unserialize

Ten post edytował php programmer 3.09.2006, 12:33:47
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #8





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Oczywiście, że można. (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

  1. <?php
  2. $_SESSION['ogloszenia'][]='aa';
  3. $_SESSION['ogloszenia'][]='ab';
  4. $_SESSION['ogloszenia'][]='ac';
  5. print_r($_SESSION);
  6. ?>


Pozdrawiam,
Go to the top of the page
+Quote Post
php programmer
post
Post #9





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 5
Dołączył: 8.11.2004
Skąd: trójmiasto

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


o kurcze, ale fajnie,
a myślałem że nie można i się męczyłem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
(myślałem że to jast podobnie jak z ciasteczkami)
Go to the top of the page
+Quote Post
ydy10
post
Post #10





Grupa: Zablokowani
Postów: 87
Pomógł: 0
Dołączył: 29.07.2006

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


no to wlasnie tak robie jak napisales.

$_GET['id'] inaczej podac nie moge.

(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 09:04