Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Problem z zapisem
bieganj
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 28.08.2009

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


Witam serdecznie,
Od ostatniego czasu co mi pomogliście trochę czasu upłynęło, sporo się nauczyłem, ale nie na tyle by rozgryźć poniższy problem.

  1. else if ($_POST['kat'] == '10-11-E') {
  2. if ($_POST['imienazwiskoon'] && $_POST['imienazwiskoona'] && $_POST['klub'] && $_POST['miasto']) {
  3. $query = "INSERT INTO kat2 (imienazwiskoon, imienazwiskoona, ";
  4. $query .= "klub, miasto, kraj) VALUES ('".$_POST['imienazwiskoon']."', '".$_POST['imienazwiskoona']."', '".$_POST['klub']."', '".$_POST['miasto']."', '".$_POST['kraj']."');";
  5. $wynik = mysql_query ($query);
  6. }
  7. }


Chodzi oto, że w 2 linii mam 4 pozycje a powinno być 5 ( o dziwo działa). Brak jest " kraj ". Gdy dopiszę pozycję piątą to niczego nie zapisuje w bazie MySQL-owej

W innej pozycji mam jeszcze dodatkowo "st" i "la" i też działa. Powiedzcie proszę czy to w czymś przeszkadza, czy też nie. Czy powinno być dopisane?

  1. else if ($_POST['kat'] == '12-13-C') {
  2. if ($_POST['imienazwiskoon'] && $_POST['imienazwiskoona'] && $_POST['klub'] && $_POST['miasto']) {
  3. $query = "INSERT INTO kat7 (imienazwiskoon, imienazwiskoona, ";
  4. $query .= "klub, miasto, kraj, st, la) VALUES ('".$_POST['imienazwiskoon']."', '".$_POST['imienazwiskoona']."', '".$_POST['klub']."', '".$_POST['miasto']."', '".$_POST['kraj']."',";
  5. $query .= " '".$_POST['st']."', '".$_POST['la']."');";
  6. $wynik = mysql_query ($query);
  7. }
  8. }


Nie chodzi mi oto, że jeśli działa to zostawić. Chcę wiedzieć czy to jest poprawne, czy też nie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Wszystko zależy od tego co ta zmienna kraj zawiera. Jeśli nic to oczywiste, że warunek się nie wykona bo na poziomie IF może się wywalić i zapytanie nie dojdzie do skutku. Zresztą spróbuj dać tam coś innego i wyświetl błąd jaki baza Ci zwróci -> mysql_error() a na bank to Ci pomoże w lokalizacji błędu. Sprawdź tę zmienną z krajem czy aby nie jest pusta. Jeśli nie to sprawdź co za błąd zwróci baza w czasie próby inserta. Potem przemyśl co za błąd to i jeśli nie będziesz nadal wiedział, zgłoś się do tego tematu (IMG:style_emoticons/default/smile.gif)

EDIT: Zapomniałem napisać... Zapytanie Ci działa bo nawet jeśli zmienna $_POST['kraj'] nie istnieje to zapytanie uzupełni się o pusty string, czyli w zapytaniu pójdzie:
kraj =''
Tyle że włączenie pełnego wyświetlania błędów w PHp wywali Ci ostrzeżenie, że taka zmienna nie istnieje. To chyba rozwiewa Twoje wątpliwości

Ten post edytował thek 7.11.2009, 23:22:13
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: 12.10.2025 - 13:20