Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][MySQL][PHP] Zapis do bazy a znaczniki html
Forum PHP.pl > Forum > Przedszkole
escobar1983
Witam,
mam problem z zapisem apostrofu do bazy
Kod
$opis=$_REQUEST['opis'];
$opis = trim(str_replace("'","'",str_replace("\\", "\", htmlspecialchars(stripslashes(
                            strip_tags($opis)),ENT_QUOTES,'UTF-8'))));

No i jak zapisuje to do bazy to wywala mi blad z apostrofem. Siedzie i juz nie wiem co jest nie tak..Prosze o pomoc.
potreb
Po co robisz str_replace, htmlspecialchars(stripslashes to nie to co stripslashes(htmlspecialchars...
escobar1983
bez str_replace tez nie daje rezultatow. A stripslashes bo $_REQUEST dodaje czasem " \' "
Fifi209
Ale co chcesz je usunąć czy co?

To, że przed ' i " dodaje Ci \ to zasługa magic_quotes
escobar1983
chce zapisywac do bazy zamiast " ' " znacznik html 039.
MateuszS
Nie wiem czy rozumiem koncepcję. Chcesz dodać do bazy tekst z '
No ale wywala ci błąd php?

Ja jak wpiszę w polu text np. asdad'sadsads''''sdf''sdf to dodaje \ przed każdym. Jeżeli Ci to przeszkadza zrób

  1. $z=str_replace('\\','',$_POST['a']);
  2. echo $z;


//edit,

rownolegle pisane posty. Chyba jednak nie o to Ci chodzi
escobar1983
str_replace(\"'\",\"'\",$tekst)
nie rozumiem to co nie da sie zapisac do bazy znacznik 039 ?
MateuszS
da sie, wystarczy przefiltrować zmienną tak jak Ci pokazałem i wrzucić do pola TEXT w bazie danych (kodowanie UTF-8 polish_ci)
escobar1983
ok bede walczyl.
MateuszS
aha no i całośc tak u mnie wygląda

  1. $z=str_replace('\\','',$_POST['a']); //gdybys chcial np jeszcze wyswietlic zmienna
  2. // echo $z;
  3. $z=addslashes($z); // konieczne, przed dodaniem do bazy
  4.  
  5. $m=mysql_query("INSERT INTO `gra` (bledy) VALUES ('".$z."')") or die(mysql_error()); //byle jaka tabela z polem TEXT, kodowaniem utf-8
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.