Hirdetés
- Mr Dini: Mindent a StreamSharkról!
- eBay-es kütyük kis pénzért
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- gban: Ingyen kellene, de tegnapra
- urandom0: Száműztem az AI-t az életemből
- Zsoca1991102: Kábel kereső / ér pár kereső
- Luck Dragon: Asszociációs játék. :)
- GoodSpeed: Munkaügyi helyzet Hajdú-Biharban: észak és dél
- flymi: Segítségkérés! Ausztráliában élő ismerőse van valakinek?
- sziku69: Fűzzük össze a szavakat :)
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
spammer
#9387
üzenetére
Kicsit összeesett a kódod.

Önmagában ez a parser elég jónak és könnyen használhatónak tűnik, a Te feladatodhoz azonban szerintem ennek a használata erős túlzás - igazából feleslegesen erőforrásigényes, hogy egy viszonylag hosszú fájlból (cikkek.html) kotorja ki a megfelelő id-vel rendelkező div-et.
Ezért írtam a példát, amit mutattam - ott széjjel vannak bontva külön fájlokra a cikkek, tehát ha egyetlen cikket akarsz megjeleníteni, akkor egyetlen fájl tartalmát csak egy az egyben behúzza, és készen is van. Ez pedig végigkotorja a cikkek.html-t, beparse-olja, jó nagy meló árán keresgél benne egy valid, adott id-vel ellátott DOM-elemet, majd végül azt jeleníti meg. Lehet, hogy ennyi cikknél még nem annyira vészes a futási ideje, sőt, 8 cikknél valószínűleg nem is olyan nagyon veszed észre a különbséget, mert alapvetően normális esetben gyorsan dolgozik a PHP, de gondolj bele, ez milyen durván erőforrásigényes lenne mondjuk 100 cikknél.Alapvetően nem ilyenekre való ez a parser. Inkább olyasmire lehet gondolni, ami a példában is van: pl. van egy külső oldal, ami itt épp a Google oldala, aminek a forráskódjából bizonyos részeket egy az egyben be akarsz húzni, és azt szerveroldalon megtenni, amire ilyen módon van lehetőség. A példában behúzza a google.com tartalmát, majd előkotorja belőle a képeket és a linkeket. Ilyet saját, "belső" oldalon megjátszani totálisan pazarlás, amikor külön-külön is lehetnének a fájljaid.
A másik az, hogy ha a felhasználó úgy nyitja meg az oldalt, hogy a $_GET['page'] nincs beállítva (tehát http://example.com/index.php?page=XYZ HELYETT http://example.com), akkor amennyiben a PHP hibajelzése magasabbra van állítva, kapsz egy notice-t, hogy felhasználsz olyan változót, ami nincs beállítva.
A switch blokk előtt ezért érdemes lenne legalább egy vizsgálatot elvégezned:$page_to_display = '';
if( isset($_GET['page']) ){
$page_to_display = $_GET['page'];
}
switch($page_to_display){
.............
}
Új hozzászólás Aktív témák
- Milyen program, ami...?
- Vigneau interaktív lokálblogja
- Telekom TV SmartBox: szolgáltatói set-top box alacsony korlátokkal
- Derült égből villámcsapás: vége a Ford elektromos kalandjának
- Mibe tegyem a megtakarításaimat?
- Mr Dini: Mindent a StreamSharkról!
- Milyen egeret válasszak?
- Több száz játékban kezdi meg karrierjét az FSR Redstone
- Milyen videókártyát?
- One otthoni szolgáltatások (TV, internet, telefon)
- További aktív témák...
- Apple iPhone 15 Pro Max - Blue Titanium - 256GB - Akku: 84% - Megkímélt állapot!
- Xiaomi 11T Pro / 8/128GB / Kártyafüggetlen / 12Hó Garancia
- BESZÁMÍTÁS! Sony PlayStation 5 Slim 1TB SSD lemezes konzol garanciával hibátlan működéssel
- Xiaomi 11 Lite 5G NE 256GB, Kártyafüggetlen, 1 Év Garanciával
- Creative Sound BlasterX G6 7.1 USB külső hangkártya
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


