Hirdetés
- Minimális változásokat hozhat a Google Pixel 10a
- Apple iPhone Air - almacsutka
- Google Pixel topik
- Google Pixel 8 Pro - mestersége(s) az intelligencia
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Xiaomi 14T Pro - teljes a család?
- Samsung Galaxy Watch4 és Watch4 Classic - próbawearzió
- Milyen okostelefont vegyek?
- Kiegészítőkkel készül karácsonyra a Xiaomi
- Csak egy ország kap Exynos 2600-as Galaxy S26 telefonokat?
Ú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
- Asus TUF F15 FX506 15.6" FHD IPS i5-11400H RTX 3050Ti 16GB 512GB NVMe magyar vbill gar
- Xbox series X dobozában, tartozékaival.
- Precision 7740 17.3" FHD IPS i9-9980HK Radeon Pro WX 3200 16GB 512GB NVMe gar
- Lenovo Thinkpad X1 YOGA 14 Touch - I7 6600U - 8Gb - 256Gb - Több db
- ZBook Fury 16 G10 16" FHD+ IPS i9-13950HX RTX 2000 Ada 32GB 1TB NVMe ujjlolv IR kam gar
- Macbook Pro 2019 Laptop A2141 i9
- ÁRGARANCIA! Épített KomPhone Ultra 9 285K 32/64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- GYÖNYÖRŰ iPhone X 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3586
- GYÖNYÖRŰ iPhone 12 mini 64GB Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3851
- Telefon felvásárlás!! Huawei P20 Lite/Huawei P20/Huawei P30 Lite/Huawei P30/Huawei P30 Pro
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
A kód ne csináljon többet az elvártnál.


