Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem ze skladnia SQL w skrypccie php
niecos
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 7.07.2009

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


Mam skrypt php z trzema wstawieniami do bazy. Wszystkie insert dochodza do skutku (rekordy zapisuje w bazie), lecz wyrzuca mi błąd:

  1. $ins_film -> INSERT INTO tbl_film VALUES ('0', 'To jest tytul filmu','To jest jakis opis filmu', '2', '4', '3', '3', NOW())
  2. $id_filmu -> 13
  3. film $ins_foto ->INSERT INTO tbl_pic_film VALUES('0', 'd:/htdocs/sklep/foto/film/tojesttytulfilmu/cover95.jpg', '13')
  4.  
  5. $ins_cena_film ->INSERT INTO tbl_dost_film VALUES( '0', '13', '7.6', 'tak', '5.7', 'tak')
  6. 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 '='2'' at line 1

sa to echa insertów

Co moze być powodem takiego blędu?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 14)
progresmedia
post
Post #2





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 7.05.2009
Skąd: Wrocław

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


Cytat
Wszystkie insert dochodza do skutku (rekordy zapisuje w bazie)


Czyli w tych zapytaniach które podałeś nie ma błędu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Cytat
to use near '='2''


Tu masz fragment zapytania przy którym jest błąd - w zapytaniach które podałeś ani razu nie występuje "=", co potwierdza, że błąd jest gdzieś indziej.

Wklej zapytania które występują wcześniej w skrypcie.
Go to the top of the page
+Quote Post
niecos
post
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 7.07.2009

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


Cytat(progresmedia @ 7.07.2009, 18:14:44 ) *
Czyli w tych zapytaniach które podałeś nie ma błędu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Tu masz fragment zapytania przy którym jest błąd - w zapytaniach które podałeś ani razu nie występuje "=", co potwierdza, że błąd jest gdzieś indziej.

Wklej zapytania które występują wcześniej w skrypcie.


wiem ze mam tam błąd i to w pierwszym, dlatego ze jak ukryłem pozostałe to dalej był ten sam to mi sie wydaje ze jest problem z "$opis_film" ale nie moge dojść co. A jakby to było pomocne to pole w bazie jest long text.
Pod spodem dane i zapytanie do tabeli
  1. <?php
  2. $tytul_film =htmlspecialchars(trim($_POST['tytul_film']));
  3. $opis_film = htmlspecialchars($_POST['opis_film']);
  4. $kat_film = $_POST['kat_film'];
  5. $bbfc = $_POST['bbfc'];
  6. $typ_sprzetu = $_POST['typ_sprzetu'];
  7. $format = $_POST['format'];
  8.  
  9.  
  10.    
  11.    $foto_czego ="film";
  12.    
  13. // wstawianie filmu do tabeli
  14.    mysql_query('SET NAMES utf8');
  15.    $ins_film ="INSERT INTO $tbl_film VALUES ('0', '".$tytul_film."','".addslashes($opis_film)."', '$kat_film', '$bbfc', '$typ_sprzetu', '$format', NOW()) ";
  16.  
  17. echo" $ins_film -> $ins_film<br>";
  18. //end wstawianie filmu do tabeli
  19. ?>


dzieki za szybką odpowiedz.
Go to the top of the page
+Quote Post
progresmedia
post
Post #4





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 7.05.2009
Skąd: Wrocław

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


Ale błąd niekoniecznie musi być w tym pliku, może być w plikach wczytywanych wcześniej. Jak dla mnie dalej to wygląda na to, że błąd jest w innym zapytaniu.

Najlepiej zrób coś takiego przy każdym zapytaniu:
Kod
$sql = "cośtam";
echo "Zapytanie: " . $sql . "<br>";
mysql_query($sql);
echo "Błąd: " . mysql_error() . "<br><br>";


I będziemy wiedzieć o które dokładnie chodzi:)
Go to the top of the page
+Quote Post
niecos
post
Post #5





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 7.07.2009

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


Nie wiem czy dobrze zrozumialem, ale:

  1. <?php
  2. $sql = "INSERT INTO $tbl_film VALUES ('0', '".$tytul_film."','".addslashes($opis_film)."', '$kat_film', '$bbfc', '$typ_sprzetu', '$format', NOW()) ";
  3.    echo "Zapytanie: " . $sql . "<br>";
  4.    mysql_query($sql);
  5.    echo "Błąd: " . mysql_error() . "<br><br>";
  6. ?>


dało:


  1. Zapytanie: INSERT INTO tbl_film VALUES ('0', 'film 3','to jest film 3', '2', '3', '10', '2', NOW())
  2. Błąd:
  3.  
  4. $id_filmu -> 15
  5. film $ins_foto ->INSERT INTO tbl_pic_film VALUES('0', 'd:/htdocs/sklep/foto/film/film3/cover184.jpg', '15')
  6.  
  7. $ins_cena_film ->INSERT INTO tbl_dost_film VALUES( '0', '15', '4.5', 'tak', '5.5', 'tak')
  8. 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 '='2'' at line 1


a to '='2 to jest tylko w tym zapytaniu.
Go to the top of the page
+Quote Post
progresmedia
post
Post #6





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 7.05.2009
Skąd: Wrocław

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


No i skoro błąd się nie wyświetlił to znaczy, że w tym zapytaniu błędu nie ma.

Powstawiaj ten kod przy każdym zapytaniu do bazy i będziemy wiedzieć w którym dokładnie jest błąd.
Go to the top of the page
+Quote Post
kajzur
post
Post #7





Grupa: Zarejestrowani
Postów: 385
Pomógł: 26
Dołączył: 22.03.2008
Skąd: TM

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


  1. <?php
  2.  
  3. $opis2 = addslashes('$opis_film');
  4. $sql = "INSERT INTO $tbl_film VALUES (0, '$tytul_film', '$opis2', '$kat_film', '$bbfc', '$typ_sprzetu', '$format', NOW()) ";
  5.   echo "Zapytanie: " . $sql . "<br>";
  6.   mysql_query($sql);
  7.   echo "Błąd: " . mysql_error() . "<br><br>";
  8. ?>


Tak wywala błąd?
Go to the top of the page
+Quote Post
niecos
post
Post #8





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 7.07.2009

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


Niestety to samo cały cas przy wszystkich 3 zapytaniach.


  1. Zapytanie: INSERT INTO tbl_film VALUES ('0', 'film 3','to jest film 3', '2', '6', '13', '5', NOW())
  2. Błąd:
  3.  
  4. Zapytanie: INSERT INTO tbl_pic_film VALUES('0', 'd:/htdocs/sklep/foto/film/film3/cover858.jpg', '23')
  5. Błąd:
  6.  
  7.  
  8. $ins_cena_film ->INSERT INTO tbl_dost_film VALUES( '0', '23', '4.5', 'tak', '5.5', 'tak')
  9. Zapytanie: INSERT INTO tbl_dost_film VALUES( '0', '23', '4.5', 'tak', '5.5', 'tak')
  10. Błąd:
  11.  
  12. 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 '='2'' at line 1

jestem pewny że to jest błąd z pierwszego zapytania bo pozmienialem wszystkie wartośći na 6, 13, 5, i now to jest w dalszym ciagu blad w tym miejscu: "-> ,'to jest film 3', '2', <- ".
Go to the top of the page
+Quote Post
progresmedia
post
Post #9





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 7.05.2009
Skąd: Wrocław

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


No ale ewidentnie widać, że błędu tam nie ma (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Są jakieś jeszcze inne zapytania w tym pliku? Albo w plikach includowanych do niego?
Go to the top of the page
+Quote Post
kajzur
post
Post #10





Grupa: Zarejestrowani
Postów: 385
Pomógł: 26
Dołączył: 22.03.2008
Skąd: TM

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


A weź sprobuj te dane które sa liczbami wpisz do zapytania bez '/' ;> Tam gdzie się spodziewasz liczby ;>
Go to the top of the page
+Quote Post
niecos
post
Post #11





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 7.07.2009

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


w tym zapytaniu: INSERT INTO tbl_film VALUES ('0', 'film 3','to jest film 3', '2', '6', '13', '5', NOW())

'0' - auto increment,
film 3 to z <input>,
to jest film 3 to jest opis z <textarea>,
2, 6, 13, 5 to sa wartosci z 4 x <select>

Są jakieś jeszcze inne zapytania w tym pliku? Albo w plikach includowanych do niego?
INSERT INTO nie ma, za to są wybierania.

A weź sprobuj te dane które sa liczbami wpisz do zapytania bez '/' ;> Tam gdzie się spodziewasz liczby ;>
Przepraszam ale nie rozumiem co mam zrobic :-) (IMG:http://forum.php.pl/style_emoticons/default/blinksmiley.gif)

a tak pozatym to mam jeszcze inne bardzo podobne tabele ten sam schemat wstawiania i tam jest ok
Go to the top of the page
+Quote Post
progresmedia
post
Post #12





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 7.05.2009
Skąd: Wrocław

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


Czyli wracamy do punktu wyjścia - ten błąd nie dotyczy zapytań INSERT - gdyby tak było to rekordy nie dodały by się do bazy, a pisałeś wcześniej, że się dodały.

Zastosuj ten fragment kodu do wszystkich zapytań w pliku.
Go to the top of the page
+Quote Post
niecos
post
Post #13





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 7.07.2009

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


Cytat(progresmedia @ 7.07.2009, 20:00:45 ) *
Czyli wracamy do punktu wyjścia - ten błąd nie dotyczy zapytań INSERT - gdyby tak było to rekordy nie dodały by się do bazy, a pisałeś wcześniej, że się dodały.

Zastosuj ten fragment kodu do wszystkich zapytań w pliku.


Wyrzuca dokladnie tak samo (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif)
Go to the top of the page
+Quote Post
progresmedia
post
Post #14





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 7.05.2009
Skąd: Wrocław

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


Ehh.. dobra, wyślij mi ten plik na biuro [at] progresmedia . pl (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
niecos
post
Post #15





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 7.07.2009

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


To nie byl problem z insertami a z selectami.
Dzieki wszystkim a przedewszystkim: progresmedia.

Szukajcie az znajdziecie hmm teraz jestem madry
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: 20.09.2025 - 09:51