- Android alkalmazások - szoftver kibeszélő topik
- Megjött Magyarországra a legnagyobb akkuval szerelt Redmi
- Honor Magic6 Pro - kör közepén számok
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Sony WF-1000XM6 – ez évi etalon?
- Elődje legnagyobb hibáját javítja az iPhone 17e
- One mobilszolgáltatások
- Poco X3 Pro - hardverfrissítés
- Szívós, szép és kitartó az új OnePlus óra
- Samsung Galaxy S25 - végre van kicsi!
Ú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
- Gamer PC - RTX 3060 Ti - Ryzen 7 3700X - 16 GB DDR4 3000 MT/s CL15
- 15.gen! Intel Core ULTRA 9 285K (24mag!) +hűtött VRM-es Z890 lap! GAR/SZÁMLA (Te nevedre kiállítva)!
- Eladó 6 darab DDR4 16 Gb Sodimm, illetve 2 darab DDR5 16 GB Sodimm
- Eladó három darab SSD. 2 x 1 TB illetve 1 x 2 TB
- több db DELL P2419 vékony kávás full HD 1920x1080 IPS monitor HDMI - gari + számla
- ÚJ, GARIS gamer egér Spirit of GAMER Xpert M800 13 000 Ft
- Xiaomi Mi 11 Lite 6/128GB / 12 hó jótállás
- Asus 15 TUF Gamer FHD IPS 144Hz G-Sync Ryzen7 7735HS 16GB 1TB SSD Nvidia RTX4060 140W Win11 Garancia
- szinteÚJ Dell Pro 14 Ultra 7 255U 16GB DDR5 1TB AI PC FHD+
- Update 02.13. - Bomba árak 2026-ban is! Üzleti - Consumer laptopok DELL FUJITSU HP LENOVO
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
A kód ne csináljon többet az elvártnál.


