- Telekom mobilszolgáltatások
- Xiaomi 14T - nem baj, hogy nem Pro
- Apple AirPods Pro (2. generáció) - csiszolt almaságok
- Minden a BlackBerry telefonokról és rendszerről
- Megérkeztek a Xiaomi 15T sorozatának telefonjai Magyarországra
- Így néz ki az újratervezett S Pen
- Apple iPhone 17 Pro Max – fennsík
- Apple iPhone 17 - alap
- Honor 200 - kétszázért pont jó lenne
- Milyen okostelefont vegyek?
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
cidalain #17192 üzenetére
"A mysql_real_escape_string() függvény nem jó [...]
Hogy kellene ezt kulturáltan megcsinálni?"
A legkulturáltabban úgy lehet megcsinálni, hogy átállsz PDO-ra vagy MySQLi-re, az összes adatbázis-művelettel kapcsolatos dolgot átírod ennek megfelelően, prepared statementeket használsz, a mysql_* kezdetű függvényeket meg inkább megpróbálod elfelejteni, és sosem nézel vissza rá. Csak a szenvedés van vele, és amúgy is régóta deprecated, ki is fog kerülni a későbbi PHP-verziókban, szóval ha jót akarsz magadnak (és az emberiségnek), akkor még időben állj át alternatív módszerekre.
Choosing an API:
http://php.net/manual/en/mysqlinfo.api.choosing.phpHa valami fos legacy kód, és tényleg nagyon rá vagy kényszerítve a használatára, akkor sorry, de muszáj volt megjegyeznem.
(#17194):
Javaslom, kapcsold be a legszigorúbb hibajelzést a fejlesztés erejéig:PHP 5.4.0 fölötti változatoknál:
error_reporting=E_ALL
display_errors=OnPHP 5.4.0-nál régebbi esetén:
error_reporting=E_ALL|E_STRICT
display_errors=OnAkkor rögtön látni fogod, hogy hibának számít az ilyen, mint amit írtál, hogy
$_REQUEST[head_end_script]
Gondolom a head_end_script nem egy konstans nálad, hanem egy sima string, akkor legyen is az, kár, hogy a PHP ilyen esetekben túl toleráns.Ha túl sokszor lett escape-elve a szöveg, akkor kénytelen vagy először unescape-elni (pl. stripslashes), majd újra elmenteni az adatbázisba.
-
fordfairlane
veterán
válasz
cidalain #17192 üzenetére
A mysql_real_escape_string() függvény nem jó, mert akkor belementődik az összes \ a kódba,...
Nem mentődik bele a kódba. A backslash csak jelzi, hogy az utána következő " vagy ' a tartalom része, nem pedig határolókarakter. Tehát nem kerül mentésre a string tartalmával. Ha backslash karakterek jelennek meg az elmentett stringben, akkor az azt jelenti, hogy a kelleténél többször lett escapelve a string.
Új hozzászólás Aktív témák
- Thrustmaster Ferrari F1 Wheel Add-On
- Új Apple Watch Ultra 2 Natural Titanium 49mm
- iKing.Hu - Apple iPhone 13 mini Kompakt erőgép, megbízható teljesítmény 256 GB
- Honor Magic V5 Ultravékony hajlítható, 120 Hz LTPO kijelzők 16/512 GB Garancia 2028. 08. 25-ig
- Bomba ár! Acer Aspire ES1 - AMD A8 I 8GB I 180GB SSD I 15,6" HD I HDMI I Cam I W10 I Garancia!
- BESZÁMÍTÁS! Samsung U28E590DS 60Hz 4K TN 1ms monitor garanciával hibátlan működéssel
- Készpénzes / Utalásos Videokártya és Hardver felvásárlás! Személyesen vagy Postával!
- ÁRGARANCIA!Épített KomPhone i5 14600KF 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Telefon felváráslás!! Samsung Galaxy S22/Samsung Galaxy S22+/Samsung Galaxy S22 Ultra
- GYÖNYÖRŰ iPhone SE 2022 64GB White -1 ÉV GARANCIA - Kártyafüggetlen, MS3366
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest