Ú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
- Assetto Corsa Rally
- Kormányok / autós szimulátorok topikja
- Milyen notebookot vegyek?
- Építő/felújító topik
- BestBuy topik
- Luck Dragon: Asszociációs játék. :)
- Telekom mobilszolgáltatások
- Samsung Galaxy A56 - megbízható középszerűség
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Társasjáték topic
- További aktív témák...
- Xiaomi Redmi 14C 128GB, Kártyafüggetlen, 1 Év Garanciával
- Apple MacBook Pro 14 2021(M1 Pro) 16GB RAM / 512GB SSD / 273 ciklus prémium gép!
- Apple MacBook Pro 16" 2021 (M1 Pro) 32GB RAM / 512GB SSD / 3456X2234 Retina XDR
- Új Gamer PC - Ryzen 7 5700X / RTX 5060 Ti / A520M / 32GB RAM 3600Mhz / 256GB + 1TB M.2 SSD / 750W
- Xiaomi Redmi 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- 4G Microsoft Surface Go 2 m3-8100Y 8GB 128GB 1 év garancia
- Bomba ár! Microsoft Surface Pro 7+ - i5-11GEN I 8GB I 256SSD I W11 I Cam I Garancia!
- Designer 4K Monitor - BenQ PD-3200-U
- AKCIÓ! Apple MacBook Pro 16 2024 M4 Max 48GB 1TB SSD macbook garanciával hibátlan működéssel
- BESZÁMÍTÁS! 4TB Western Digital Red Pro SATA HDD meghajtó garanciával hibátlan működéssel
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő



Szerintem nincs a főőődön IDE, ami erre figyelmeztetne.
Mi köze a kettőnek egymáshoz? 




