Ú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)). -
tothjozsi96
addikt
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
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- 200 megapixeles zoomkamerát sem kap az S26 Ultra?
- Automata kávégépek
- Elektromos cigaretta 🔞
- PlayStation 1 / 2
- PlayStation 5
- Gaming notebook topik
- Youtube Prémium és ChatGPT
- AMD Navi Radeon™ RX 6xxx sorozat
- Kerékpárosok, bringások ide!
- További aktív témák...
- ZBook Fury 16 G9 16" FHD+ IPS i7-12850HX RTX A2000 32GB 512GB NVMe magyar vbill ujjlolv IR kam gar
- AKCIÓ!!! GAMER PC: Új i5-14400F +RTX 4060/5060/4070/5070 +16-64GB DDR4! GAR/SZÁMLA! 50 FÉLE HÁZ!
- Elite Dragonfly G3 13.5" FHD+ IPS érintő i5-1235U 16GB 512GB NVMe ujjlolv gar
- Újszerű 17.3" FHD (1920x1080) IPS 40pin 144Hz matt LED kijelző. AUO B173HAN04.9
- Lenovo kezdő laptop (i3 6th, 500 GB, 4 GB) reklámáron! AkciÓÓ!
- Így lesz a Logitech MX Keys magyar billentyűzetes
- Telefon felváráslás!! Xiaomi 13T, Xiaomi 13T Pro, Xiaomi 14T, Xiaomi 14T Pro
- Dell USB-C dokkolók: (K20A) WD19/ WD19S/ WD19DC + 130W, 180W, 240W töltők
- Bomba ár! Dell Inspiron 15 3511 - i5-11GEN I 8GB I 256SSD I HDMI I 15,6" FHD I Cam I W11 I Gari
- Tablet felvásárlás!! Samsung Galaxy Tab A8, Samsung Galaxy Tab A9, Samsung Galaxy Tab S6 Lite
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest