Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] POST i Serialize
mundek88
post
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 26.04.2007

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


formularz.php:
  1. <?php
  2.  
  3. $aTablica = Array('polski', 'niemiecki');
  4. $aZserializowana=serialize($aTablica);
  5.  
  6. echo "<form action='dane.php' method='POST'> 
  7. <input type='hidden' name='tablica' value='.$aZserializowana.'>
  8. <input type='text' name='imie' size='15' /><br /> 
  9. <input type='text' name='nazwisko' size='16' /><br /> 
  10. <input type='radio' name='plec' value='m' /> Mężczyzna<br /> 
  11. <input type='radio' name='plec' value='k' /> Kobieta<br /> 
  12. <input type='submit' value='Wyślij dane' /><br /> 
  13. </form>";
  14. ?>


dane.php:
  1. <?php
  2. $aTablica=unserialize($_POST['tablica']);
  3. print_r ($aTablica);
  4. ?>

dlaczego po przesłaniu echuje mi nieodkodowaną tablicę tylko
Array ( [tablica] => .a:2:{i:0;s:6:\"polski\";i:1;s:9:\"niemiecki\";}. [imie] => [nazwisko] => )


kolejne pytanie:
Czy istnieje inna możliwość przesyłania danych przez GET lub POST niż w oparciu o formularze ?
Go to the top of the page
+Quote Post
Cienki1980
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


Źle umieszczasz dane w formularzu,
Zwróć uwagę, że do ciągu który powstał w wyniku serialize() masz dodaną kropkę na początku i końcu.

formularz powinien wyglądać tak:
  1. <?php
  2. echo "<form action='dane.php' method='POST'> 
  3. <input type='hidden' name='tablica' value='".$aZserializowana."'>
  4. <input type='text' name='imie' size='15' /><br /> 
  5. <input type='text' name='nazwisko' size='16' /><br /> 
  6. <input type='radio' name='plec' value='m' /> Mężczyzna<br /> 
  7. <input type='radio' name='plec' value='k' /> Kobieta<br /> 
  8. <input type='submit' value='Wyślij dane' /><br /> 
  9. </form>";
  10. ?>

Widzisz różnicę ?
Go to the top of the page
+Quote Post
mundek88
post
Post #3





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 26.04.2007

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


ok, poprawiłem formularz.php
hmm... teraz odkryłem że wynikiem działania w dane.php
  1. <?php
  2.  
  3. $aTablica=unserialize($_POST['tablica']);
  4. echo ($aTablica);
  5.  
  6. ?>

jest... nic - nie wyświetla żadnego tekstu, a to że pisałem że tablica nie jest odkodowana to moja pomyłka bo mam jeszcze w pliku kilka funkcji odczytujących zmienne.
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: 23.08.2025 - 05:10