Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> błąd w składni języka SQL?
QaPi
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 23.09.2009

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


Witam. Kiedy próbuję wykonać skrypt to taki błąd mi wyskakuje:

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 ' `wiadomosc`='sdfgbsdfgbdfhgbsdfgbsdflgsdfngn'' at line 1

z tego co mi google przetłumaczyły to oznacza to mniej wiecej:
Masz błąd w składni języka SQL; wyboru podręcznika odpowiada wersję serwera MySQL za prawo do używania składni w pobliżu "tekst" `= 'sdfgbsdfgbdfhgbsdfgbsdflgsdfngn''w linii 1

a oto plik:

  1. <?php
  2. include("include/config.php");
  3. include("player_class.php");
  4. mysql_query("INSERT INTO chat SET `id_sender`=".$id.", `wiadomosc`='".$_POST['tekst']."'") or die(mysql_error());
  5.  
  6. header("Location: chat.php");
  7. ?>


Ps Nie wiem czy w odpowiedni dział dałem ten temat. Jak nie, to przepraszam/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
maly_swd
post
Post #2





Grupa: Zarejestrowani
Postów: 744
Pomógł: 118
Dołączył: 14.02.2009
Skąd: poziome

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


prawdopodobnie w zmiennej POST dostajesz apostrofa ' i przez to cala skladnia sie sypie. To co dostajesz w POSCIe powino byc filtrowane

np na szybko:
  1. mysql_query("INSERT INTO chat SET `id_sender`=".$id.", `wiadomosc`='".addslashes($_POST['tekst'])."'") or die(mysql_error());
Go to the top of the page
+Quote Post
QaPi
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 23.09.2009

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


Niestety dalej nie działa...
Go to the top of the page
+Quote Post
someone.cool
post
Post #4





Grupa: Zarejestrowani
Postów: 50
Pomógł: 1
Dołączył: 31.01.2009

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


Cytat(QaPi @ 24.09.2009, 17:37:15 ) *
Niestety dalej nie działa...


a może id jest NULL ? bo wtedy kferenda wygląda tak
CODE

INSERT INTO chat SET `id_sender`=, `wiadomosc`='wiadomosc';


na szczęście na mysql znam się lepiej niż na gramatyce (IMG:style_emoticons/default/winksmiley.jpg)

Ten post edytował someone.cool 24.09.2009, 18:31:38
Go to the top of the page
+Quote Post
QaPi
post
Post #5





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 23.09.2009

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


Nie... ID na 99% nie jest puste. Bo tą samą zmienną wyświetlam id użytkownika i poprawnie ją wyświetla. Więc nie powinna być pusta... Połączenie z bazą też jest prawidłowe...
Go to the top of the page
+Quote Post
batman
post
Post #6





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




  1. echo "INSERT INTO chat SET `id_sender`=".$id.", `wiadomosc`='".$_POST['tekst']."'";
i wklej to, co się wyświetliło.
Go to the top of the page
+Quote Post
someone.cool
post
Post #7





Grupa: Zarejestrowani
Postów: 50
Pomógł: 1
Dołączył: 31.01.2009

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


albo daj
CODE

  1. echo "INSERT INTO chat SET `id_sender`='".$id."', `wiadomosc`='".$_POST['tekst']."'";

Query się wykona dodając Ci tego "pewniaka" do bazy o ile nie masz unikatów ustawionych na tej kolumnie, a przeciwnie nowy błąd bedziesz miał (IMG:style_emoticons/default/winksmiley.jpg)

Ten post edytował someone.cool 24.09.2009, 21:28:28
Go to the top of the page
+Quote Post
QaPi
post
Post #8





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 23.09.2009

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


A jednak, ten pewniak jest pusty. Dzięki wielkie. Teraz to już z górki poleci jak wiem w czym błąd tkwi (IMG:style_emoticons/default/winksmiley.jpg)


edit: No, teraz pięknie działa (IMG:style_emoticons/default/biggrin.gif) Jeszcze raz wielkie dzięki

Ten post edytował QaPi 25.09.2009, 21:55:29
Go to the top of the page
+Quote Post

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 - 21:54