Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z checkboxami (implode), Action nie przenosi wartości zmiennej...
kuzarek
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 21.08.2004

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


Witam! Mam następujący problem:

dodaj.php
  1. <?
  2. if ($wporzo != "tak") {
  3.  header("Location: http://localhost/baza.php");
  4.  exit;
  5. } else {
  6.  session_register('wporzo');
  7. }
  8.  
  9. for($i = 0 ; $jezyk[$i] != null; $i++)
  10. {
  11. $jezyki = implode(", ", $jezyk);
  12. }
  13. ?>

  1. <form action="dodaj_baza.php" method="post">
  2. <tr>
  3. <td>
  4. <p><strong>Nazwa szkoly:</strong><br>
  5. <input type="text" name="nazwa" size=35 maxlenght=100></p>
  6. <p><strong>Jezyki:</strong><br>
  7. <input type="checkbox" name="jezyk[]" value="Angielski podstawowy">
  8. Angielski podstawowy<br>
  9. <input type="checkbox" name="jezyk[]" value="Angielski rozszerzony">
  10. Angielski rozszerzony<br>
  11. <input type="checkbox" name="jezyk[]" value="Niemiecki podstawowy">
  12. Niemiecki podstawowy<br>
  13. <input type="checkbox" name="jezyk[]" value="Niemiecki rozszerzony">
  14. Niemiecki rozszerzony<br>
  15. <input type="checkbox" name="jezyk[]" value="Hiszpański podstawowy">
  16. Hiszpański podstawowy<br>
  17. <input type="hidden" name="jezyki" value="<? echo $jezyki; ?>">
  18. </td>
  19. </tr>
  20. <tr>
  21. <td><input type="submit" name="submit" value="Wyślij"></td>
  22. </tr>
  23. </table>
  24. </form>
  25. </body>
  26. </html>


Generalnie w tym skrypcie chodzi o to aby za pomocą checkboxów można było zaznaczyć dowolne opcje,
a następnie wynik w postaci ciągu (implode) był w oknie wynikowym skryptu dodaj_baza.php. Problemu nie ma gdy w action wstawimy
dodaj.php zamiast dodaj_baza.php (można to sprawdzić wstawiając
  1. <? echo $jezyki; ?>
po
  1. <td><input type="submit" name="submit" value="Wyślij"></td>
).
Jednak gdy w polu action damy dodaj_baza.php to zachowuje sie tak jakby nie było zmiennej $jezyki w wyniku czego powracamy do formularza (skrypt dodaj_baza.php kontroluje czy wartości dla zmiennych istnieją). Proszę o pomoc gdyż przeszukiwałem co się dało, to forum, jak i inne oraz google wraz z angielskimi serwisami! i szczerze mówiąc sie nie doszukałem. Problem podkreślam raz jeszcze polega na ustawieniu wartości dla Action w Form chyba że tkwi on gdzieś indziej.

dodaj_baza.php
  1. <?
  2.  
  3. if ((!$nazwa) || (!$jezyki)) {
  4. header( "Location: http://localhost/dodaj.php");
  5. } else {
  6. }
  7.  
  8. if ($wporzo != "tak") {
  9.  header("Location : http://localhost/baza.php");
  10.  exit;
  11. } else {
  12.  session_register('wporzo');
  13. }
  14.  
  15. $nazwa_bazy = "nazwa bazy";
  16. $nazwa_tabeli = "nazwa tabeli";
  17. $polaczenie = @mysql_connect("localhost", "login", "haslo") or die ("Próba polaczenia nie powiodla sie");  
  18. $baza = @mysql_select_db($nazwa_bazy, $polaczenie) or die("Wybór bazy danych nie powiódl sie.");
  19.  
  20. $sql = "INSERT INTO $nazwa_tabeli
  21. (id, nazwa, jezyki)
  22. VALUES ("", "$nazwa", "$jezyki")
  23. ";
  24.  
  25. $wynik = @mysql_query($sql, $polaczenie) or die("Wykonanie zapytania nie powiodlo sie.");
  26.  
  27. ?>

  1.  
  2. <p>Ponizsze informacje zostaly dodane do <? echo "$nazwa_tabeli"; ?></p>
  3.  
  4. <table cellspacing=3 cellpadding=5)
  5. <tr>
  6. <td valgin=top>
  7. <p><strong>Nazwa:</strong><br>
  8. <? echo "$nazwa"; ?></p>
  9. <p><strong>Jezyki:</strong><br>
  10. <? echo "$jezyki"; ?></p>
  11. </td>
  12. </tr>
  13. <tr>
  14. <td algin=center colspan=2><br>
  15. <p><a href="baza.php">Powrót do glównego menu</a></p>
  16. </td>
  17. </tr>
  18. </body>
  19. </html>


Ten post edytował kuzarek 17.11.2005, 14:58:19
Go to the top of the page
+Quote Post

Posty w temacie


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 - 04:59