Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Formularz nie zapisuje do bazy
Forum PHP.pl > Forum > Przedszkole
cent4
Nie działa mi poprawnie zapis do bazy danych.
Chcę aby user wybrał kilka opcji z pola checkbox i jeżeli wybrał np. "podloga" i "okno" - to w bazie maj± być 2 zapisy:
mysql_query("INSERT INTO porzadki VALUES ('', '$data', 'podłoga', '$osoba')") or die("Błąd w zapytaniu!");
i
mysql_query("INSERT INTO porzadki VALUES ('', '$data', 'okno', '$osoba')") or die("Błąd w zapytaniu!");
Cało¶ć poniżej:


Mam formularz w jednym pliku:
  1. echo "<B><font color=\"lime\">Rodzaj wykonanej czynno¶ci</font></B>: <br />";
  2. echo "<input type=\"checkbox\" name=\"rodzaj\" value=\"podloga\" />podłoga<br />";
  3. echo "<input type=\"checkbox\" name=\"rodzaj\" value=\"regaly\" />regały<br />";
  4. echo "<input type=\"checkbox\" name=\"rodzaj\" value=\"okno\">okno<br />";
  5. echo "<input type=\"checkbox\" name=\"rodzaj\" value=\"smieci\" />¶mieci<br /> ";


i jego obsługę w drugim pliku, który jest wywoływany POST'em z pierwszego pliku:
  1. if(!empty($_POST['podloga'])){
  2. mysql_query("INSERT INTO porzadki VALUES ('', '$data', 'podłoga', '$osoba')") or die("Błąd w zapytaniu!");
  3. };
  4.  
  5. if(!empty($_POST['regal'])){
  6. mysql_query("INSERT INTO porzadki VALUES ('', '$data', 'regał', '$osoba')") or die("Błąd w zapytaniu!");
  7. };
  8.  
  9. if(!empty($_POST['okno'])){
  10. mysql_query("INSERT INTO porzadki VALUES ('', '$data', 'okno', '$osoba')") or die("Błąd w zapytaniu!");
  11. };
  12.  
  13. if(!empty($_POST['smieci'])){
  14. mysql_query("INSERT INTO porzadki VALUES ('', '$data', '¶mieci', '$osoba')") or die("Błąd w zapytaniu!");
  15. };
Posio
  1. INSERT INTO `xx` (`xx`) VALUES ('$xx')
teez
  1. ('',


Co to? To ID czy co? Wpisz zamiast '' to `nazwa`
kamil_lk
Cytat
  1. if(!empty($_POST['podloga'])){
  2. mysql_query("INSERT INTO porzadki VALUES ('', '$data', 'podłoga', '$osoba')") or die("Błąd w zapytaniu!");
  3. };
  4.  
  5. if(!empty($_POST['regal'])){
  6. mysql_query("INSERT INTO porzadki VALUES ('', '$data', 'regał', '$osoba')") or die("Błąd w zapytaniu!");
  7. };
  8.  
  9. if(!empty($_POST['okno'])){
  10. mysql_query("INSERT INTO porzadki VALUES ('', '$data', 'okno', '$osoba')") or die("Błąd w zapytaniu!");
  11. };
  12.  
  13. if(!empty($_POST['smieci'])){
  14. mysql_query("INSERT INTO porzadki VALUES ('', '$data', '¶mieci', '$osoba')") or die("Błąd w zapytaniu!");
  15. };


Po instrukcji warunkowej if ¶rednika nie stawiamy, być może to masz Ľle. Dopisz do die mysql_error(), czyli ma być tak: or die("Bł±d w zapytaniu!<br />".mysql_error());
cent4
Dalej nie działa...
kamil_lk
Ale co Ci nie działa? co Ci wywala? Jaki¶ bł±d?
cent4
Poprostu nie zapisuje do bazy sad.gif
nospor
Znaczy ze zaden z warunków nie jest spełniony....
cent4
No wła¶nie nie - bo zaznaczam pierwsz± opcję "podłoga" i nic :-(
nospor
  1. if(!empty($_POST['podloga'])){
  2.  
  3. mysql_query("INSERT INTO porzadki VALUES ('', '$data', 'podłoga', '$osoba')") or die("Błąd w zapytaniu!");
  4. die("WIDZISZ MNIE?! A oprócz mnie widzisz co¶ jeszcze??");
  5. };


Jak zobaczysz tekst, znaczy ze zapytanie sie wykonuje. Jak nie zobaczysz, znaczy ze warunek nie jest spełniony. Tyle w temacie.

A najlepiej zrób tak:
  1. if(!empty($_POST['podloga'])){
  2.  
  3.  
  4.  
  5. mysql_query("INSERT INTO porzadki VALUES ('', '$data', 'podłoga', '$osoba')") or die("Błąd w zapytaniu!");
  6.  
  7. die("WIDZISZ MNIE?! A oprócz mnie widzisz co¶ jeszcze??"."INSERT INTO porzadki VALUES ('', '$data', 'podłoga', '$osoba')");
  8.  
  9. };

By się upewnić czy na pewno w to zapytanie wkładasz warto¶ci...
cent4
nospor miał rację - aż głupio stwierdzić ale problem leżał po stronie wy¶wietlania wyników, a nie w zapisie smile.gif.
To jest wersja lo-fi głównej zawarto¶ci. Aby zobaczyć pełn± wersję z większ± zawarto¶ci±, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.