- AMD Navi Radeon™ RX 9xxx sorozat
- Milyen videókártyát?
- ASUS ROG Ally
- Az időjárás borongósabbra váltott, de a hardverek még vígadnak
- RAM topik
- Azonnali informatikai kérdések órája
- OLED TV topic
- Kormányok / autós szimulátorok topikja
- Gaming notebook topik
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
DNReNTi #15427 üzenetére
"Nem kezel. Az adatbázis kapcsolat létrehozása előtt ki aztán pedig bekapcsolja az error_reporting-ot, hogy hiba esetén egy szépen megformázott hiba oldalra tudja dobni a felhasználót (header()). Ha nem kapcsolnám ki, akkor maga a php dobna hibát, ami után nem menne a header, ezért van benne. Ez ebből hiányzik, mivel: 1: nincs hibaoldal, 2: teszt."
Te ezt írtad:error_reporting(0);
$DB_Connect = new mysqli(self::$DB_Host, self::$DB_User, self::$DB_Pass, self::$DB_Name);
if ($DB_Connect->connect_error) {
echo 'Database connection failed. Code : ' . $DB_Connect->connect_errno;
}
$DB_Connect->set_charset(self::$DB_Char);
error_reporting(1);Tehát fogod, és 0-ra, majd 1-esre állítod az error_reportingot.
Egyrészt eleve milyen alapon nyúlkál az osztályod az error_reporting értékéhez, minek? Az ilyesmit felejtsd el gyorsan.A kód ne csináljon többet az elvártnál.
Másrészt sztem te az error_reporting()-ot a display_errors értékével kevered.
Harmadrészt miért állítod be az error_reporting szintjét pont az E_ERROR-ra? Az error_reporting(1); ugyanis ekvivalens azzal, ha azt írod, hogy error_reporting(E_ERROR); Mi van, ha korábban az error_reporting értéke szándékosan E_ALL-ra volt állítva, ami 32767? (Itt láthatod az értékeket.)"»»"Ha csak kiírsz egy üzenetet a képernyőre, attól az alkalmazásod még fut tovább"
Az előzőben benne a válasz. Élesben egy hibaoldalra dob."
Hát ez eleve rossz megközelítés. Most akkor itt echo-zol, de aztán majd élesben átírod normális hibakezelésre? Ez így nem lesz jó. Az ilyenből tuti, hogy az lesz, hogy tesztelésnél nem jelentkezik semmilyen hiba, tök jól működnek a dolgaid, aztán majd élesben jöhet a gebasz, és akkor szépen kiírtad a képernyőre a hibaüzenetet, ahelyett, hogy eleve normálisan kezelted volna a hibákat, már amikor megírtad a kódot.
Jótanácsként mondom, ne szopasd magad azzal, hogy "hát ezt majd átírom", mert úgyis elfelejted, vagy pedig később csak macerás lesz megcsinálni.
Szóval az echo-zás helyett dobj szépen egy exceptiont, hiszen komoly hiba, ha nem tudtál csatlakozni az adatbázishoz.A többit asszem mallee már leírta, például hogy tök értelmetlenek az if-else-be rakott exception-dobásaid.
Pont azért jó, hogy tudsz dobálni exceptionöket, mert elkerülheted az ilyen ocsmány if-else szerkezeteket.
Új hozzászólás Aktív témák
- Kijelző került a kamerasávra a Xiaomi 17 Pro és 17 Pro Max hátulján
- AMD Navi Radeon™ RX 9xxx sorozat
- Milyen videókártyát?
- Robogó, kismotor
- gban: Ingyen kellene, de tegnapra
- VGA kibeszélő offtopik
- Óra topik
- ASUS ROG Ally
- A fociról könnyedén, egy baráti társaságban
- Az időjárás borongósabbra váltott, de a hardverek még vígadnak
- További aktív témák...
- Féláron eladó vadonatúj razer blade 14 rtx 3080ti
- 500 ezerrel ár alatt! Vadonatúj garanciás razer blade 16 oled kijelző rtx 4070
- Hardverapró árérték bajnoka! Razer blade rtx 3080 ti i9 32gb ddr5 4k kijelző 144hz!
- Eladó kiskergaris 18TB-os Seagate EXOS X18 Enterprise HDD
- Félkonfig // I7 7700, GTX 1070, 16 GB DDR4
- Honor 90 512GB, Kártyafüggetlen, 1 Év Garanciával
- 123 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 7 7745HX, RTX 4070 - 4 év garancia
- GYÖNYÖRŰ iPhone 11 128GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS3128
- Samsung S23+ 256GB Állapot: 10/10 6 hónap jótállás!
- HIBÁTLAN iPhone 13 Pro Max 128GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3390, 93% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest