Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][JavaScript][SQL]Jak stworzyć dynamiczny podwójny select
kamikaze1945
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 27.03.2007

Ostrzeżenie: (20%)
X----


Chciałbym prosić o pomoc (IMG:http://forum.php.pl/style_emoticons/default/sadsmiley02.gif) Siedzę od kilki dni nad tym samym problemem. Pierwszy mój problem, to jak powinien wyglądać skrypt js, aby stworzyć dynamicznie select'a, który po wybraniu kategorii składnika, zmieniał przypisane do niego w drugim select'ie składniki? Tak poniżej wygląda mój skrypt w php, pobierający kategorie składnika, składnik, oraz jednostkę wagi z bazy danych.
  1. <?php
  2.  
  3. require('dbmysql.inc.php');
  4. $db= new DBMysql;
  5. $db-> Connect();
  6.  
  7.  
  8. //-----------
  9. // Zapytanie wybierające kategorie składników
  10. print '<form id="formularz">
  11. <fieldset>
  12. <legend>Dodaj skladniki przepisu:</legend>
  13. <div id="formularz">';
  14. $pobierz_kat_skladniki = ("SELECT id_kat_skladnik, kat_skladnika FROM kat_skladnik ORDER BY kat_skladn
    ika ASC"
    );
  15.  $pobrane_kat_skladniki = mysql_query($pobierz_kat_skladniki) or die(mysql_error());
  16.  
  17.  if (mysql_num_rows($pobrane_kat_skladniki) > 0) {
  18. $wyswietlany_blok .= "<select name=id_wyb_kat>
  19. <option value= \"\">---Wybierz kategorie---</option>";
  20.  
  21. while ($rekord = mysql_fetch_array($pobrane_kat_skladniki)) {
  22.  $kat_skladnika = $rekord['kat_skladnika'];
  23.  $id_kat_skladnika = $rekord['id_kat_skladnik'];
  24.  $wyswietlany_blok .= "
  25.  <option value=" .$id_kat_skladnika .">" . $kat_skladnika . "</option>";
  26.  }
  27.  $wyswietlany_blok .= "</select>";
  28.  }
  29.  
  30. //Zapytanie wybierające składniki
  31. $pobierz_skladniki = ("SELECT id_skladnik, nazwa_skladnika FROM skladnik ORDER BY nazwa_skladnika 
    ASC"
    );
  32.  $pobrane_skladniki = mysql_query($pobierz_skladniki) or die(mysql_error());
  33.  
  34.  if (mysql_num_rows($pobrane_skladniki) > 0) {
  35. $wyswietlany_blok .= "<select name=id_wyb_skl>
  36. <option value= \"\">---Wybierz skladnik--</option>";
  37.  
  38. while ($rekord = mysql_fetch_array($pobrane_skladniki)) {
  39.  $id_skladnik = $rekord['id_skladnik'];
  40.  $nazwa_skladnika = $rekord['nazwa_skladnika'];
  41.  $wyswietlany_blok .= "
  42.  <option value=" .$id_skladnik .">" . $nazwa_skladnika . "</option>";
  43.  }
  44.  $wyswietlany_blok .= "</select>";
  45.  }
  46.  
  47.  
  48. //Zapisujemy wagę skłądnika
  49. $ilosc=addslashes($ilosc);
  50. mysql_query($ilosc);
  51.  
  52. $wyswietlany_blok .= "<select name=ilosc>";
  53.  
  54. for ($ilosc=0; $ilosc<=1000; $ilosc++){
  55. $wyswietlany_blok .= "<option value= ".$ilosc.">". $ilosc. "</option>";
  56. }
  57.  
  58. //Zapytanie wybierające nazwę jednostki wagi  
  59. $query = ("SELECT n_jednostki FROM jed_wagi");
  60.  $wys_jw= mysql_query($query) or die(mysql_error());
  61.  
  62.  if (mysql_num_rows($wys_jw) > 0) {
  63. $wyswietlany_blok .= "
  64. <select name=id_wyb_jed>
  65. <option value= \"\">---Jednostkę wagi---</option>";
  66.  
  67. while ($row = mysql_fetch_array($wys_jw)) {
  68.  $id_jednostki = $row['id_jednostki'];
  69. $n_jednostki = $row['n_jednostki'];
  70.  $wyswietlany_blok .= "
  71.  <option value=" .$id_jednostki .">" . $n_jednostki . "</option>";
  72.  }
  73.  $wyswietlany_blok .= "</select>";
  74.  }
  75.  
  76.  
  77.  
  78.  $wyswietlany_blok .= "
  79.  </select>
  80.  </div>
  81.  </fieldset>
  82.  </form>
  83.  ";
  84.  
  85. ?>
  86.  
  87.  
  88. <?php echo $wyswietlany_blok; ?>
  89.  
  90. </body>
  91. </html>


Drugi problem to jak stworzyć przycisk powielający mój cały powyższy formularz, umożliwiający dodanie kolejnego składnika? Mam coś takiego ale nie działa mi (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
  1.  
  2. <script type="text/javascript">
  3. <!--
  4. var numer_skladnika;
  5.  
  6. function new_add(){
  7.  
  8. if (numer_skladnika==undefined) numer_skladnika=2; else numer_skladnika++;
  9. var formularz = document.getElementById("formularz");
  10. formularz.innerHTML=formularz.innerHTML+'Składnik #'+numer_skladnika+': formluarz<br>';
  11. }
  12. //-->
  13.  
  14. </head>
  15. <form id=formularz>
  16.  
  17. ....cała zawartość powyższego skryptu php...
  18.  
  19. <input type="button" value="Dodaj nastepny składnik" onclick="new_add()">
  20. </form>
  21. </body>
  22. </html>

Bardzo będę wdzięczny za pomoc

EDIT:

Widzę że nie ma nikogo kto by mógł mi pomóc (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Znalazłem też cos takiego ale nie wiem jak to przerobic (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
http://forum.4programmers.net/viewtopic.php?id=122098

Ten post edytował kamikaze1945 17.05.2008, 13:27:03
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: 24.08.2025 - 01:33