Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP] Błąd podczas dodawania wpisu do bazy danych
heniu87
post 7.04.2011, 21:12:32
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 12.08.2006

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


Witam serdecznie,

Mam następujący problem:

Napisałem skrypt dodający do bazy danych wpis, wygląda on tak:

  1. $query = "INSERT INTO l_games (id, pl1, pl2)" .
  2. " VALUES('','" . $players[$i] . "','" . $players[$j] . "')" ;
  3. mysql_query($query) or die(mysql_error());


Wszystko działa prawidłowo - ląduje w bazie danych tak jak powinno. Jednak gdy rozbuduję go o dodatkową opcję:

  1. $query = "INSERT INTO l_games (id, group, pl1, pl2)" .
  2. " VALUES('', '1', '" . $players[$i] . "','" . $players[$j] . "')" ;
  3. mysql_query($query) or die(mysql_error());


to podczas próby dodania wpisu do bazy danych MySQL wyświetla się błąd:

  1. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'group, pl1, pl2) VALUES('', '1', 'aa','dd')' at line 1


Nie mam pojęcia dlaczego. Co dziwne - gdy dodaję ten sam wpis przez phpMyAdmin to wszystko jest ok:

  1. INSERT INTO `b15_6320159_r`.`l_games` (`id`, `season`, `group`, `pl1`, `pl2`, `res`, `civ1`, `civ2`, `enddate`, `map`, `pw`, `comment`) VALUES (NULL, NULL, '1', 't1', 't2', NULL, NULL, NULL, NULL, NULL, NULL, NULL);


Na czym może polegać błąd? Straciłem nad tym godzinę i wciąż nie mam zielonego pojęcia gdzie jest coś nie tak...

Proszę o pomoc. Wszelkie pomysły będą mile widziane.
Go to the top of the page
+Quote Post
ToAr
post 7.04.2011, 21:33:48
Post #2





Grupa: Zarejestrowani
Postów: 49
Pomógł: 18
Dołączył: 7.04.2011
Skąd: Toruń

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


spróbuj tak

  1. $query = "INSERT INTO l_games (`id`, `group`, `pl1`, `pl2`)" .
  2. " VALUES('', '1', '" . $players[$i] . "','" . $players[$j] . "')" ;
  3. mysql_query($query) or die(mysql_error());


w SQL'u jest coś takiego jak GROUP BY i prawdopodobnie zapytanie jest źle interpretowane, dlatego dobrze nazwy kolumn umieszczać w 'gravisach'
Go to the top of the page
+Quote Post
sadistic_son
post 7.04.2011, 21:36:00
Post #3





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Pochrzaniłeś cudzysłowy. Zrób tak:
  1. $query = "INSERT INTO l_games (id, group, pl1, pl2) VALUES(NULL, '1', '$players[$i]' ,'$players[$j]' )";
  2.  
  3. mysql_query($query) or die(mysql_error());


Ten post edytował sadistic_son 7.04.2011, 21:37:34


--------------------
Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami...

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc!
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Go to the top of the page
+Quote Post
heniu87
post 7.04.2011, 21:46:14
Post #4





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 12.08.2006

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


ToAr - rzeczywiście o to chodziło, mysql "myślał", że chcę użyć GROUP BY, po wstawieniu "`" wszystko działa! Dziękuję Pięknie! thumbsupsmileyanim.gif

sadistic_son - cudzysłowy się zgadzały, sprawdzałem je milion razy zanim napisałem tutaj ten problem, ale dzięki za chęć pomocy.
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 Wersja Lo-Fi Aktualny czas: 19.07.2025 - 09:25