Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql][php] problem z checkboxem
tomek_swat
post
Post #1





Grupa: Zarejestrowani
Postów: 72
Pomógł: 0
Dołączył: 3.04.2008

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


Witam,
Mam problem z ustaleniem jakie sklepy wybrał użytkownik, a następnie dodanie do tabeli asortyment, wszystkich wybranych przez niego sklepów wraz z dodanym produktem określonym przez odpowiednie pola formularza, z góry dziękuję za wskazówki

pzdr

  1. <?php
  2.  
  3. require_once('controller.php');
  4.  
  5. $link=@mysql_connect($db_host, $db_login, $db_pass)
  6. or die('Brak połączenia z serwerem MySQL.');
  7.  
  8. @mysql_select_db($db_name)
  9. or die('Błąd wyboru bazy danych.');
  10.  
  11.  if(isset($_POST['add']))
  12. {
  13.  
  14. $query = "INSERT into Produkt (IdKategorii,IdProd,NazwaP,KOpisP,DOpisP,Cena) 
  15. values ('$IdKategorii','$IdProd','$NazwaP','$KOpisP','$DOpisP','$Cena');";
  16. mysql_query($query);
  17. /*
  18. $sql0 = "SELECT IdProduktu from Asortyment where IdSklepu = '$IdSklep'";
  19. $result0 = mysql_query($sql0);
  20.  
  21. while($row4 = mysql_fetch_array($result0)){
  22. $IdProduktu = $row4[IdProduktu];
  23. }
  24.  
  25. $sql = "INSERT into Asortyment (IdProduktu,IdSklepu)
  26. values ('$IdProduktu','$IdSklep')";
  27. mysql_query($sql);
  28.  
  29. for($i=0; )
  30. if ($_POST[IdSklepu] == "on"){
  31.  
  32. }
  33. */
  34. header('Location: index.php');
  35. }
  36. else
  37. {
  38. echo '
  39. <h3 style="text-align: left; margin-bottom: -10px;"> &nbsp;Dodaj produkt</h3>
  40. <form method="post" action="produkty_dodaj.php" >
  41. <table class="form" width="400" border="0" cellspacing="1" cellpadding="2" style="text-align: left">
  42.  
  43. <tr>
  44. <td class="form">Wybierz sklepy, do których <br /> dodasz produkt</td>
  45. <td>';
  46. $i=0;
  47. $query3 = "SELECT IdSklepu, SNazwa from Sklep";
  48. $result3 = mysql_query($query3);
  49. while(list($IdSklepu,$SNazwa)= mysql_fetch_row($result3)){
  50.  
  51. echo "<input type='checkbox' name='$IdSklepu' value='$IdSklepu' id='$IdSklepu'> $SNazwa<br />";
  52.  
  53. }
  54.  
  55. echo '
  56. </td>
  57. </tr>
  58.  
  59. <tr>
  60. <td class="form">Wybierz kategorie</td>
  61. <td>
  62. <select name="IdKategorii" type="text" id="IdKategorii">
  63. ';
  64.  
  65. $query1 = "select IdKategorii, NazwaK from Kategoria";
  66. $result1 = mysql_query($query1);
  67. while($row1 = mysql_fetch_array($result1)){
  68.  
  69. echo "<option value='$row1[IdKategorii]'>$row1[NazwaK]</option>";
  70. }
  71.  
  72. echo '</select>
  73. </td>
  74. </tr>
  75. <tr>
  76. <td class="form">Wybierz producenta</td>
  77. <td>
  78. <select name="IdProd" type="text" id="IdProd">
  79. ';
  80.  
  81. $query2 = "select IdProd, NazwaProd from Producent";
  82. $result2 = mysql_query($query2);
  83. while($row2 = mysql_fetch_array($result2)){
  84.  
  85. echo "<option value='$row2[IdProd]'>$row2[NazwaProd]</option>";
  86. }
  87.  
  88. echo '</select>
  89.  
  90. </td>
  91. </tr>
  92. <tr>
  93. <td class="form">Nazwa produktu</td>
  94. <td><input name="NazwaP" type="text" id="NazwaP" ></td>
  95. </tr>
  96. <tr>
  97. <td class="form">Krótki opis</td>
  98. <td><textarea name="KOpisP" rows="3" cols="15"></textarea></td>
  99. </tr>
  100. <tr>
  101. <td class="form">Długi opis</td>
  102. <td><textarea name="DOpisP" rows="5" cols="20"></textarea></td>
  103. </tr>
  104. <tr>
  105. <td class="form">Cena</td>
  106. <td><input name="Cena" type="text" id="Cena"></td>
  107. </tr>
  108.  
  109. <tr>
  110. <td width="100">&nbsp;</td>
  111. <td>&nbsp;</td>
  112. </tr>
  113. <tr>
  114. <td width="100">&nbsp;</td>
  115. <td><input name="add" type="submit" id="add" value="Dodaj produkt" ></td>
  116. </tr>
  117. </table>
  118. </form>';
  119. }
  120. mysql_close($link);
  121. ?>

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Xniver
post
Post #2





Grupa: Zarejestrowani
Postów: 108
Pomógł: 26
Dołączył: 29.02.2008

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


Dla każdego sklepu wyświetlasz taki checkbox:
  1. <input type="checkbox" name="sklep[]" value="TUTAJ ID SKLEPU" />


A potem w PHP odczytujesz np. tak:
  1. <?php
  2. foreach($_POST['sklep'] as $sklepId)
  3. {
  4. $sklepId = (int) $sklepId;
  5.  
  6. if($sklepId)
  7. {
  8. // Tutaj insert etc.
  9. }
  10. }
  11. ?>


Ten post edytował Xniver 16.07.2008, 22:30:52
Go to the top of the page
+Quote Post
tomek_swat
post
Post #3





Grupa: Zarejestrowani
Postów: 72
Pomógł: 0
Dołączył: 3.04.2008

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


ok dzięki działa tak jak chciałem, mam jeszcze tylko problem bo do tabeli asortyment potrzebuje dodać te wszystkie IdSklepów które są z checkboxów oraz to IdProduktu, produktu aktualnie dodawanego i tu mam problem bo nie wiem jak pobrać właśnie to IdProduktu

  1. <?php
  2. if(isset($_POST['add']))
  3. {
  4.  
  5. $query = "INSERT into Produkt (IdKategorii,IdProd,NazwaP,KOpisP,DOpisP,Cena) 
  6. values ('$IdKategorii','$IdProd','$NazwaP','$KOpisP','$DOpisP','$Cena');";
  7. mysql_query($query);
  8.  
  9.  
  10.  
  11. foreach($_POST['sklep'] as $IdSklep){
  12. $IdSklep = (int) $IdSklep;
  13.  
  14. if($IdSklep){
  15. $sql = "INSERT into Asortyment (IdProduktu,IdSklepu)
  16. values ('$IdProduktu','$IdSklep')";
  17.  
  18. }
  19. }
  20.  
  21.  
  22. header('Location: index.php');
  23. }
  24. else
  25. {
  26. ..
  27. ?>


ok rozwiązałem ten problem poprzez linijkę
  1. <?php
  2. $IdProduktu = mysql_insert_id();
  3. ?>

zwraca mi id ostatnio dodanego elementu
pzdr

Ten post edytował tomek_swat 17.07.2008, 16:32:00
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.12.2025 - 17:31