- bitpork: Malac java, új kuMpi, káposzta sali
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- M0ng00se: Hardvert áruhitelre?
- Steven: Sokat utazó kávéfüggők ide!
- sziku69: Fűzzük össze a szavakat :)
- btz: Internet fejlesztés országosan!
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- eBay-es kütyük kis pénzért
- sziku69: Szólánc.
Új hozzászólás Aktív témák
-
Tele von Zsinór
őstag
válasz
vakondka #1210 üzenetére
Az injection ellen is véd, meg hogy a spec karakterek is helyesen kerüljenek be. Nálam a db osztály escape függvénye így néz ki:
if (get_magic_quotes_gpc()) $input = stripslashes($input);
return @mysql_real_escape_string($input,$this->connection);És ezt hívom meg minden alkalommal, amikor usertől származó adatot rakok bele query stringbe. Kivételek persze vannak: ha valamit sokszor használok, akkor inkább egy külön változóba escapelem, és azt az értéket rakom stringbe, mert a plusz memóriafoglalással is hatékonyabb, mint ennek a többszöri meghívása
-
fordfairlane
veterán
válasz
vakondka #1210 üzenetére
Most olvasom a felhasználók kommentjeit, és vannak köztük érdekesek:
"Remember to slash underscores (_) and percent signs (%), too, if you're going use the LIKE operator on the variable or you'll get some unexpected results."
Úgy tűnik, hogyha nagyon precízek akarunk lenni, akkor saját escape függvényt kell csinálni, mert ez a példa csak a LIKE paraméterre vonatkozik.
-
fordfairlane
veterán
válasz
vakondka #1210 üzenetére
Én nem szoktam ezeket a függvényeket használni. A mysql_real_escape_string leírása szerint backslash-t szúr a következő karaterek elé:
\x00, \n, \r, \, ', " és \x1aAz addslashes pedig a következők elé: \, ', ". Nem tudom, hogy szükség van-e a mysql_real_escape_string-re, ezen még nem gondolkodtam el, de lehetséges.
Ami a sprintf-et illeti, a haszna abban van, hogy típuskonverziót is kikényszerít, így egy numerikusnak várt érték, ami valami hiba vagy hack miatt nem numerikus, nem fog query hibát okozni. Én nem szoktam használni a sprinf-et, integernél általában a query-be beszúráskor explicit típuskonverziót adok meg, ha tudom, hogy csakis az adott típus lehet, pl. jelen esetben integert várok:
$query .= 'tipus='.(int)$p['tipus'];
Ez már inkább programozási stílus kérdése, hogy ki melyiket használja.
Új hozzászólás Aktív témák
Hirdetés
- Futás, futópályák
- Mobil flották
- Autós topik
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- A Bosch szerint Európának nem kellene az AI-t a halálba szabályozni
- Fogyjunk le!
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- EAFC 25
- Milyen routert?
- Garmin Forerunner 970 - fogd a pénzt, és fuss!
- További aktív témák...
- Dell OptiPlex MT/SFF 3040, 3050, 7050, 3060, 3070, 5070, 7060 /WIN 11 - SZÁMLA- GARANCIA
- ÁRGARANCIA! Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! Gigabyte B760M i5 13400F 16GB DDR4 512GB SSD RTX 3070 8GB Pure Base 500DX fehér 650W
- Bomba ár! Lenovo X1 Yoga 1st - i7-6G I 8GB I 256SSD I 14" WQHD Sérült I W10 I CAM I Garancia!
- Apple iPhone 14 Pro 128GB, Kártyafüggetlen,
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged