![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 13.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Wysylam za pomoca $_GET zmienna (tablice) ud[] z formularza a nastepnie chcialbym przekazac ta zmienna (i elementy tej tablicy) w urlu na inna strone. Jak robie tak : szukaj.php?ud=$_GET['ud'] to po wejsciu w ten url mam : szukaj.php?ud=array i elementy z tablicy ud nie sa widoczne :? Jak zrobic by to dzialalo ![]() -------------------- Pozdrawiam,
Rafal |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Radze przekazywac to za pomoca sesji, za pomoca URL'a od biedy sie da, ale to nie jest dobry pomysl.
-------------------- Brak czasu :/
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
[manual:8f9e94393a]serialize[/manual:8f9e94393a]
[manual:8f9e94393a]unserialize[/manual:8f9e94393a] -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Cytat Witam
Wysylam za pomoca $_GET zmienna (tablice) ud[] z formularza a nastepnie chcialbym przekazac ta zmienna (i elementy tej tablicy) w urlu na inna strone. Jak robie tak : szukaj.php?ud=$_GET['ud'] to po wejsciu w ten url mam : szukaj.php?ud=array i elementy z tablicy ud nie sa widoczne :? Jak zrobic by to dzialalo ![]() [php:1:c82d15d150]<?php $link = "szukaj.php?"; for($i = 0, $max = count($_GET['ud']); $i < $max; $i++) { $link .= "ud[]=".$_GET['ud'][$i]; $i == $max - 1 ? '' : $link .= "&"; } echo $link; ?>[/php:1:c82d15d150] -------------------- "Coś się kończy, coś się zaczyna." Andrzej Sapkowski
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 13.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Dziekuje za szybka odpowiedz
![]() Krzychu> Twoj kod nie dziala tzn. po przekazaniu w ten sposob ud[] na inna strone nie mozna pozniej korzystac z niej tak jak korzysta sie z tablicy html; poza tym przy echo zmiennej nie pokazuje nawet ze to tablica. ![]() Scanner> Probuje uzyc serialize() i unserialize() ale cos mi nie idzie... Robie tak [php:1:c1238b0d55]<?php $tab=serialize($_GET['ud']; echo"<a href='strona.php?ud=$tab>strona</a>"; ?>[/php:1:c1238b0d55] i ladnie mi to przekazuje w urlu w formacie : ud=a:2:{i:0;s:1:%222%22;i:1;s:1:%223%22;} Chcialbym zeby ta zmienna wrocila, po przekazaniu w urlu, do wczesniejszej postaci czyli ud[] i robie tak : [php:1:c1238b0d55]<?php $ud1=unserialize($_GET['ud']); echo $ud1; ?>[/php:1:c1238b0d55] Niestety nie zamienia to na wczesniejszy format zmiennej i nie moge z tej zmiennej korzystac. Echo nie pokazuje nic. Co robie zle ![]() ![]() -------------------- Pozdrawiam,
Rafal |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Wydaje mi się, że wszystkie %22 musisz wcześniej zamienić na " a później unserialize. Jest taka funkcja rawurldecode().
-------------------- "Coś się kończy, coś się zaczyna." Andrzej Sapkowski
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 13.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Niestety jeszcze nie dziala
Podam moze co mi pokazuje w echo po zastosowaniu kazdej funkcji: [php:1:8b8263b9c6]<?php echo"ud1 = ".$_GET['ud'].; // wyswietla ud1 = a:2:{i:0;s:1:"2";i:1;s:1:"3";} $ud1= rawurldecode($_GET['ud']); echo"ud1 = $ud1"; // wyswietla ud1 = a:2:{i:0;s:1:"2";i:1;s:1:"3";} $ud1 = unserialize($ud1); echo"ud1 = $ud1"; // wyswietla ud1 = ?>[/php:1:8b8263b9c6] -------------------- Pozdrawiam,
Rafal |
|
|
![]()
Post
#8
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Bo najpierw musisz to zakodowac:
[php:1:c12a2f2ba6]<?php $tab=rawurlencode(serialize($_GET['ud'])); echo"<a href='strona.php?ud=$tab>strona</a>"; ?>[/php:1:c12a2f2ba6] I dopiero przy odczycie to co robisz. -------------------- Brak czasu :/
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 13.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Po zakodowaniu jest to samo...
-------------------- Pozdrawiam,
Rafal |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 95 Pomógł: 0 Dołączył: 30.07.2003 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
sprawdz tablice print_r (po unserialize) i bedziesz wiedzial, czy masz tablice czy co
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 13.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Nie wyswietla mi print_r($ud) po unserlialize :!: :?:
Tak jakby w ogole tej zmiennej nie bylo. Tak jakby unserialize kasowal zmienna... -------------------- Pozdrawiam,
Rafal |
|
|
![]()
Post
#12
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Przeanalizuj to:
[php:1:dc5097c374]<?php $arr = array(1,"2","3"); printf("<a href='?v=%s'>klik</a>", urlencode(serialize($arr))); if (!empty($_GET['v'])) { $a = unserialize(urldecode($_GET['v'])); var_dump($a); } >?[/php:1:dc5097c374] -------------------- Brak czasu :/
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 13.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
W koncu dziala. Rozwiazalem to podobnie do propozycji krzycha.
Moze sie to komus kiedys przyda ![]() [php:1:2d3188cf7b]<?php $link="szukaj.php"; if (!empty($_GET('ud')){ for ($i=0; $i < count($_GET['ud']); $i++) { $udo=$_GET['ud'][$i]; if ($i==0){ $link=."?ud[$i]=".$udo; }else{ $link=."&ud[$i]=".$udo; } }// koniec for } ?>[/php:1:2d3188cf7b] Dziekuje za zainteresowanie -------------------- Pozdrawiam,
Rafal |
|
|
![]()
Post
#14
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Spoko, taka uwaga: pętlę for lepiej budować tak jak na moim przykładzie, gdzie tylko raz robisz count($tablica), zajmuje to mniej czasu, a przy dużych tablicah dochodzi to nawet do kilkudziesięciu procent czasu mniej. (thx Scanner)
-------------------- "Coś się kończy, coś się zaczyna." Andrzej Sapkowski
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.07.2025 - 23:33 |