Autor | Zpráva | ||
---|---|---|---|
grimword Profil |
#1 · Zasláno: 8. 7. 2014, 11:30:36
Pokud text obsahuje ' (apostrof), tak se záznam neuloží do MySQL.
Můj starý kód: $titulek1=htmlspecialchars($titulek1); MySQL_Query("insert into a_waiting (id, titulek, ...............) VALUES ('', '$titulek1', '.............................)"); Řešením by mělo být $titulek1=mysql_real_escape_string(htmlspecialchars($titulek1)); Jenomže o tom čtu, že je to zastaralé. Jak tedy mám ošetřit tu proměnnou, abych mohl ukládat apostrof? |
||
juriad Profil |
#2 · Zasláno: 8. 7. 2014, 11:34:22
grimword:
Zastaralé je i mysql_query a přesto to používáš. Správně bys měl do databáze použít jen funkci mysql_real_escape_string. A funkci htmlspecialchars až když budeš titulek z databáze vypisovat. Toto platí pro všechny řetězce, které ukládáš/vypisuješ z databáze. |
||
Joker Profil |
#3 · Zasláno: 8. 7. 2014, 11:42:19
Lehce doplním juriada:
mysql_real_escape_string je ta správná funkce pro použití s mysql_query. Zastaralé je mysql rozšíření jako celek, včetně mysql_query, čili když už skript musí používat mysql_query, je mysql_real_escape_string ta správná escapovací funkce. |
||
grimword Profil |
#4 · Zasláno: 8. 7. 2014, 11:45:32
Díky, tak to tedy použiji.
|
||
Časová prodleva: 10 let
|
0