Hirdetés
Új hozzászólás Aktív témák
-
DNReNTi
őstag
válasz
Sk8erPeter
#15477
üzenetére
Na hogy végre valami érdemi dologról legyen szó.

Elkészült az adatbázis kezelő "projektem" 1.2 verziója, az észrevételek figyelembevételével. Update-ek:
- Van konfigurációs osztály, amely később minden egyéb más konfigurációs feladatot elláthat. A getDatabaseConfiguration() metódus konfig fájlból beolvassa a szükséges adatokat, majd egy tömbben tér velük vissza.
- Ennek folyománya hogy megváltozott a kapcsolatot létrehozó osztály. első kérdés lehet miért szerepel benne az ini_set();. Sajnos ha a host rosszul van megadva a try ellenére is hibákkal bombáz szét a php, így viszont nem. Ezúttal csak a megjelenítés van kikapcsolva nem a reporting, ahogy Sk8erPeter írta korábban. Ha minden jól megy egy mysqli objektumot ad vissza, ha nem, akkor kivétellel elszáll, és átmenetileg a csodás die() függvény szolgáltatását igénybe véve véget vet a futtatásnak. Erre mindenképp szeretnék valami szebb megoldást, de a try-ból nem lehet kiugrani header-el hibaoldalra.
- A legtöbb változás magát a lekérdezést kezelésért felelős osztályt érintette. Egy halom privát metódusra szedtem az ellenőrzést, valamint született egy szintén privát executeQuery() nevű metódus, ami a futtatással bezárólag elvégez minden ellenőrzést, idáig minden lekérdezés ugyan úgy fordul le. Három különböző metódusra bontottam a lekérdezéseket, azok típusainak megfelelően, egyelőre tehát van select(), insert(), update() metódus. A select() eredmény tömbbel, az update() az érintett sorok számával az insert() pedig az utolsó beillesztett id-val tér vissza.
Használata alig változott, például:
$DB = new Database();
$SQL_command = 'SELECT content FROM example WHERE id = ? AND active = ?';
$SQL_parameters = array(547,1);
try {
$result = $DB->select($SQL_command, $SQL_parameters);
} catch (Exception $e) {
echo 'ERROR : ' . $e->getMessage() . '<br>';
}Osztálybetöltés autoloader-rel van megoldva. Egyelőre úgy látom minden szuperül működik, és így az én két üveg Heinekentől csipás szememmel megfigyelve, sikerült többnyire implementálni az észrevételeiteket.
Kérdések:
- Jó e?
- Hogyan oldjam meg szépen, hogy az openConnection() metódus, hiba esetén (nem sikerül kapcsolódni az adatbázishoz), egy header()-rel adott hibaoldalra dobjon?Köszi!
Új hozzászólás Aktív témák
- Laza koronavírus topik
- Formula-1
- BestBuy ruhás topik
- A fociról könnyedén, egy baráti társaságban
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Milyen notebookot vegyek?
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Anime filmek és sorozatok
- Counter-Strike: Global Offensive (CS:GO) / Counter-Strike 2 (CS2)
- Autós topik
- További aktív témák...
- Új Steelseries Arctis Nova pro vezetékes gamer fejhallgató
- Új, Aktiválatlan iPhone 14 (128 GB) (rendelhető)
- Készpénzes / Utalásos Számítógép felvásárlás! Személyesen vagy Postával!
- GYÖNYÖRŰ iPhone 12 mini 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3853, 100% Akkumulátor
- HP Z8 G4 Workstation (gamer célra is) dupla CPU Xeon Gold 6134
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



