Cześć mam zapytanie do bazy które nie wrzuca do bazy stringa z ukośnikiem i cudzysłowiem jakiej funkcji php użyć ?
$nazwa = " Rura 1/4' "; query("INSERT INTO [Tabela] ([Nazwa]) VALUES( '".$nazwa."')");
https://www.php.net/manual/en/pdo.prepare.php
A spróbuj zrobić tak:
$nazwa = " Rura 1/4\\' "; // lub tak: $mysqli = new mysqli( ... ); $nazwa = $mysqli->real_escape_string(" Rura 1/4' ");
JA tylko moze wyjasnie jaki blad popelnia autor, bo nikt nie raczyl
query("INSERT INTO [Tabela] ([Nazwa]) VALUES( '".$nazwa."')");
skoro nazwa zawiera apostrof ' to twoj tekst po wlozeniu tej $nazwy wyglada tak
query("INSERT INTO [Tabela] ([Nazwa]) VALUES( ' Rura 1/4' ')");
Jak widzisz w zapytaniu po VALUES otwierasz tekst apostrofem ale w tekscie tez masz apostrof wiec on jakby zamyka tekst z wpierwszego VALUES a potem znowu ni z gruszki ni z pietruszki jest apostrof i masz blad skladni zapytania.
Nastepnym razem wyswietlas co generujesz oraz wyswietlaj bledy zapytan bo tam to wszystko masz opisane co bylo zle.
No i jak juz napisano, albo uzywaj PREPARE albo ESCAPOWANIA. Lepsze prepare z bindowaniem wartosci rzecz jasna
dzieki!!
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)