Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Przekazywanie zmiennych poprzez formularz
Bojakki
post
Post #1





Grupa: Zarejestrowani
Postów: 379
Pomógł: 0
Dołączył: 18.08.2004

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


Mam taki kod:

  1. <?php
  2. $pytanie = $_REQUEST['pytanie'];
  3. echo '<form name="formularz" method="post" action="strona.php?pytanie='.$pytanie.'">';
  4.  
  5. echo '<select name="pytanie">
  6. <option value="0" selected>Wybierz</option>
  7. <option value="1">Tak</option>
  8. <option value="2">Nie</option>
  9. </select>';
  10.  
  11. echo '<input type="submit" name="submit" value="Zatwierdz"/>';
  12. echo '</form>';
  13. ?>


CHodiz o to, ze nie wiem jak zbudowac taki formularz by dzialal, tak, ze po wyborze ktorejs opcji z rozwijanego menu 'pytanie' i kliknieciu na 'zatwierdz' przenioslo mnie na strone, ktrej URL wyglada tak:
"strona.php?pytanie='.$pytanie.'"
Konkretnie to mi sie ta zmienna $pytanie nie dopisuje i przenosi na strone, ktora ma URL:
"strona.php?pytanie="
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Kicok
post
Post #2





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


Formularze nie trzeba koniecznie wysyłać metodą POST:
  1. <?php
  2. echo '<form name="formularz" method="get" action="strona.php">';
  3.  
  4. echo '<select name="pytanie">
  5. <option value="0" selected>Wybierz</option>
  6. <option value="1">Tak</option>
  7. <option value="2">Nie</option>
  8. </select>';
  9.  
  10. echo '<input type="submit" value="Zatwierdz"/>';
  11. echo '</form>';
  12. ?>
Go to the top of the page
+Quote Post
Bojakki
post
Post #3





Grupa: Zarejestrowani
Postów: 379
Pomógł: 0
Dołączył: 18.08.2004

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


Juz lepiej, ale nie do konca. Teraz URL wyglada tak:

strona.php?pytanie=2&submit=Zatwierdz

a) jak wyrzucic '&submit=Zatwierdz'?

wazniejsze bo punkt a) mozna olac i bedzie dzialac
(IMG:http://forum.php.pl/style_emoticons/default/cool.gif) w URLu jest jeszcze 1 zmienna pobierana z adresu za pomoca $_request, wczesniej mi dzialala, teraz jej w ogole nie ma (nie pisalem o niej bo myslalem, ze jest nie istotane punktu widzenia rozwiazania mojego problemu)
Go to the top of the page
+Quote Post
Kicok
post
Post #4





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


a) Wywal z pola submit: name="submit" tak jak w moim przykładzie, to się pojawiać nie będzie

b ) Niestety metoda GET nadpisuje wszystkie zmienne które aktualnie są w adresie strony, więc wypadałoby zrobić pola ukryte:

  1. <?php
  2. echo '<form name="formularz" method="get" action="strona.php">';
  3.  
  4. echo '<input type="hidden" name="jakas_zmienna_ktora_znikla" value="'.htmlspecialchars($_GET['jakas_zmienna_ktora_znikla']).'" />';
  5.  
  6. echo '<select name="pytanie">
  7. <option value="0" selected>Wybierz</option>
  8. <option value="1">Tak</option>
  9. <option value="2">Nie</option>
  10. </select>';
  11.  
  12. echo '<input type="submit" value="Zatwierdz" />';
  13. echo '</form>';
  14. ?>


Ten post edytował Kicok 19.03.2007, 21:18:26
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: 15.09.2025 - 02:09