- Megjöttek a be quiet! Pure Loop 3 sorozatú kompakt AIO-i
- 80 cm-es képtálójú, 4K-s BenQ monitor audiovizuális típusú munkához
- Felfűtené a 2 nm-es versenyt a japán Rapidus
- AI és közelségérzékelő növeli az MSI QD-OLED kijelzőinek élettartamát
- Bemutatjuk az MSI új Godlike X870E és MAX szériás alaplapjait
- Azonnali processzoros kérdések órája
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Milyen billentyűzetet vegyek?
- Monitor hiba topik
- BIOS topic
- Nem indul és mi a baja a gépemnek topik
- AMD Navi Radeon™ RX 9xxx sorozat
- Milyen alaplapot vegyek?
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
Új hozzászólás Aktív témák
-
DNReNTi
őstag
válasz
Sk8erPeter #16331 üzenetére
Jaja, az. JetBrains oldalán van is rá doksi, Youtube csatornájukon meg video, gyorsan összedobtam rá egy "tesztkörnyezetet" (1db php file), belőttem ahogy a dokban le van írva, meg a videóban elmondva, így működik. Egyelőre ennyire volt idő, majd hozzáapplikálom, valami nagy projekthez is, ahol haszna is lesz.
-
-
DNReNTi
őstag
válasz
Sk8erPeter #16324 üzenetére
Köszi a tippet, be is lőttem az XDebug-ot.
(#16329) Sk8erPeter
Pontosan így történt.(#16328) Athlon64+
Ezt én se értem most.
A lényeg kóddal:
$SQL_recordset = $SQL_statement->get_result();
if ($SQL_recordset) {
//megyünk tovább
} else {
//"nincs" recordset
}Vizsgálva van a metódus return, de nem hibás, csak false, és épp azért mert a $SQL_statement->execute(); kimaradt.
Szerintem nincs a főőődön IDE, ami erre figyelmeztetne.
-
Sk8erPeter
nagyúr
válasz
Peter Kiss #16328 üzenetére
Hát Te biztos érted, mire gondolsz.
Itt most elvileg pont az volt az érdekes, hogy igazából a lényeget hagyta le (nem hajtotta végre); az IDE mégsem figyelmeztette semmire, mert a változó egyébként inicializálva volt, gondolom volt bindParam/bindValue is, blabla, csak a vége (execute) úgy, ahogy van, lemaradt. Szóval valóban nem ellenőrizte annak a visszatérési értékét, amit nem is írt le.
"PDO-hoz a büdös életben nem nyúlok többet"
Magyarázat? -
Peter Kiss
őstag
válasz
Sk8erPeter #16324 üzenetére
Úgy tudtam, szokás vizsgálni egy metódus return értékét, ha mond valamit. Biztos azért gondolkodtam furcsán, mert PDO-hoz a büdös életben nem nyúlok többet.
-
Sk8erPeter
nagyúr
válasz
tothjozsi96 #16326 üzenetére
Mi az, hogy akkor mi van?
Mi köze a kettőnek egymáshoz?
- egyrészt itt írtam már, hogy amúgy is érdemes a tisztításra valamilyen kész library-t használnod (mert most nem tisztogatod a feltöltött üzeneteket egyáltalán?Mert az ugyebár nem túl jó.)
- másrészt hogy jönnek ide a <script>-tagekben elhelyezett rondaságok, XSS ahhoz, hogy te :), :D és ehhez hasonló emoticonnak megfelelő karaktersorozatokat keresgélsz, majd átalakítod őket <img>-tagekké?
- harmadrészt amúgy is whitelist-jelleggel kellene csupán engedned bizonyos limitált tageket (vagy egyáltalán nem), aszerint szűrni (ez kapcsolódik az első ponthoz), na meg létezik strip_tags függvény is, aminek pont ilyen whitelistet megadhatsz (első, legegyszerűbb megközelítés, de mondom, a tisztításra amúgy is illene használnod valamilyen library-t (pl. HTML Purifier és hasonlók)). -
válasz
Sk8erPeter #16325 üzenetére
Igen, az lenne a legjobb ha simán <img> tag-ekkel menne, mert úgy gyors lenne, de viszont ha jön egy xss akkor mivan?
script alert ...Mellesleg, a htmlspecialchars kiszűrné, csak úgy már nincs img tag sem.
-
Sk8erPeter
nagyúr
válasz
tothjozsi96 #16323 üzenetére
Ezt már korábban írtam, de az, hogy minden egyes megjelenítésnél minden egyes üzeneten végigmész, és még azonbelül is iszonyatosan sok reguláris kifejezésre keresgélsz, teljesen érthető, hogy rohadt lassúvá teszi az egészet. A reguláris kifejezés keresgélése amúgy sem egy gyors állat. Lehet egyrészt egyszerűbbé is tenni magát a reguláris kifejezést is (bár elég bonyolult egyszerűvé tenni
), meg lehet csökkenteni is a keresendő kifejezések számát (nem biztos, hogy érdemes 314 emoticon használatát lehetővé tenni), illetve lehet javítani a használt módszeren is, erről is írtam már, hogy egyből feltöltéskor alakítanád át a smiley-kat <img>-tagekké, eleve úgy mentenéd el az üzenetet, így azért jópár lépést megspórolsz, nem kell állandóan, minden megjelenítésnél újból és újból kikeresgélni ezeket. Ez utóbbira még mindig nem reagáltál, pedig már legalább harmadjára írom le.
Vagy legalább akkor írd le, az miért nem jó megoldás.
(Lehet olyan eset simán, csak legalább tudjam, hogy eljutott hozzád az információ.
)
-
Sk8erPeter
nagyúr
válasz
DNReNTi #16316 üzenetére
"valamint számtalan var_dump() után, rájössz"
Meg kellene szokni, hogy a var_dump() csak egy olyan tool, amit akkor érdemes csak használni, ha egyébként nem áll rendelkezésedre NORMÁLIS fejlesztőkörnyezet. Ott van az Xdebug, amit pont arra találtak ki, hogy PHP-kódokat lehessen debuggolni (és profilozni), a legtöbb népszerű IDE-vel egyszerű a belövése, sőt, a honlapján van egy olyan oldal is, ami a phpinfo-d kimenete alapján kideríti, neked pontosan melyik verzióra is van szükséged belőle:
http://xdebug.org/wizard.php
Komolyan, jótanács, hogy tanuld meg a rendes debuggolást minden programozási nyelvnél, ahol lehetséges, PHP-nál is. Bár a PHP-nál sajnos a legtöbb helyen ilyen béna var_dumpolást (/var_export, stb.) látni "debuggolás" címén, az nem debuggolás, itt is lehet az IDE-ben breakpointokat elhelyezni, az aktuális sornál megnézni a változó tartalmát az IDE-ben a watch-résznél, és így tovább; miután egyszer kellő időt eltöltöttél a használatával, nagyon durván fel tudja gyorsítani az időt, és segítségével elfelejtheted az ilyen kódokban itt-ott elhelyezett, akár véletlenül benthagyott kiíratásokat, bénázásokat. Tényleg megéri a befektetett időt (és ez minden programozási nyelvre igaz, hogy meg kell tanulni benne debuggolni, amennyiben lehetséges tisztességes módon is).(#16317) Athlon64+ :
Speciel egy inicializált változóról van szó, nem tudom, melyik IDE hívja fel a figyelmet rá, hogy elfelejtetted meghívni rajta az execute-ot... Persze lehet, hogy beállítható ez is.
Új hozzászólás Aktív témák
Hirdetés
- Azonnali processzoros kérdések órája
- Kerékpárosok, bringások ide!
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Hitelesítették az S26 Ultra csalódást keltő telepét
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Horgász topik
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Futás, futópályák
- A fociról könnyedén, egy baráti társaságban
- Sorozatok
- További aktív témák...
- Gigabyte X299 UD4 Pro LGA 2066 alaplap, i7-7820X proci, 64 GB DDR4-3200 MHz RAM
- Dell Alienware AW3423DWF Oled 165HZ Gamer Monitor (garis)
- Bomba ár! Lenovo ThinkPad Yoga X380 - i7-8G I 16GB I 256SSD I 13,3" FHD Touch I Cam I W11 I Gari!
- Bomba ár! Lenovo ThinkPad T590 - i5-8GEN I 16GB I 256GB SSD I 15,6" FHD Touch I Cam I W11 I Gari!
- Bomba ár! Lenovo ThinkPad T15 G1 - i7-10GEN I 16GB I 512GB SSD I 15,6" FHD I Cam I W11 I Gari!
- LG 27GS60QC-B - 27" Ívelt - 2560x1440 - 180Hz 1ms - AMD FreeSync - Bontatlan - 2 Év Gyári Garancia
- BESZÁMÍTÁS! ASRock B550M R5 5600 32GB DDR4 512GB SSD RTX 4060 TI 16GB Zalman N5 Chieftec 700W
- MacBook Pro 16 i7-9750H 32GB RAM 512GB SSD RX 5300M 1 év garancia
- Xiaomi Redmi 12C 64GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! MSI B150M i5 7400 16GB DDR4 250GB SSD 500GB HDD GTX 1060 3GB BitFenix NOVA MESH 400W
Állásajánlatok
Cég: FOTC
Város: Budapest