Hirdetés
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- droidic: [Memory Leak] Az agy defragmentálása
- Gurulunk, WAZE?!
- Magga: PLEX: multimédia az egész lakásban
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- bambano: Bambanő háza tája
- Parci: Milyen mosógépet vegyek?
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
InfiniteReality
#9249
üzenetére
PazsitZ előttem már szépen elmondta, vannak alternatív módszerek annak elkerülésére, hogy több fájlban is kelljen sessionöket küldözgetni. Meg lehet template-ezni is, stb. Alapvetően a keretrendszerek, CMS-ek felhasználásakor nem kell ilyesmivel szívnod.
De hogy lehetséges megoldást mondjak arra is, amiről Te beszélsz, lehet ellenőrzéseket is végezni:
1.) headers_sent() függvény segítségével megtudhatod, a HTTP fejlécek el vannak-e már küldve - azt is meg lehet vele tudni, konkrétan hol.Ilyen módon nem használtam még, de ez működhet:
if(!headers_sent && !isset($_SESSION)){
session_start();
}2.) AJAX problémára:
a jQuery pl. beállít egy fejlécet az XMLHTTPRequest-kérésekre (lásd [link]), így a jQuery-s AJAX-függvények használata esetén ez is teljes biztonsággal ellenőrizhető (sokszor tesztelve, valóban működik):define('IS_AJAX', ( isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest' ) );
if(IS_AJAX){
session_start();
}Valószínűleg más JS-library-k, frameworkök is beállítanak valami plusz headert, hogy konkrétan mit, az könnyen kideríthető.
Mivel elsősorban AJAX-os problémáról beszéltél Te is, utóbbi megoldás lehet a jobb a kettő közül. De alapvetően inkább egyik sem - jobb adni egy "keretet" a programjaidnak, amiben bizonyos szabályok szerint működnek a dolgok, mindennek megvan a helye, és nem mindenféle fájlban indítgat az ember sessiont - valami olyasmi a megoldás, amit előttem PazsitZ leírt.Alapvetően a hibák elnyomása a @ karakterrel egy nagyon rossz szokásra ösztönöz.
Az elnyomott hibák felderítése pedig egy kódban maga a pokol.
NEM képzelhető el olyan eset, amikor a hibák elnyomását ne lehetne elkerülni valami előzetes vizsgálattal. Ha pedig van rá lehetőség, akkor azt kell alkalmazni.
Új hozzászólás Aktív témák
- Eladó ASUS ROG Claymore II RGB RX HU Kitűnő, Sértetlen Állapotban, Gyári Dobozában!
- NVIDIA RTX 3080 Ti 12GB GDDR6X Founders Edition Eladó!
- Újszerű Samsung IPS monitor, Emelhető-Forgatható, 2xHDMI, DP, Joystick
- Eladó ASUS Rog Spatha X Hibátlan, Gyári Dobozos Állapotban!
- DJI SPARK SUNRISE YELLOW DRONE SOK KIEGÉSZÍTŐVEL ELADÓ
- Apple iPhone 13 Mini 128GB,Újszerű,Dobozával,12 hónap garanciával
- Új és újszerű 15-16 Gamer, irodai, üzleti, készülékek nagyon kedvező alkalmi áron Garanciával!
- ÚJ HP OmniBook Ultra Flip 14"OLED 2,8 K 120Hz - Ultra 7 256V - 16GB - 1TB - 2,5 év gari - MAGYAR
- 365 NAPRA RÉSZLETRE BANKMNETES KAMATMENTES , GAMER PC ,LAPTOPOK , GAMER SZÉKEK , GAMER MONITOROK
- Dell Latitude 3420 - i5 1135G7 ,16GB RAM, SSD, jó akku, EU bill., számla, 6 hó gar
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi

