Hirdetés
- EarFun Air Pro 4+ – érdemi plusz
- Bemutatkozott a Poco X7 és X7 Pro
- Poco X6 Pro - ötös alá
- Apple Watch
- Xiaomi 15T Pro - a téma nincs lezárva
- iPhone topik
- „Új mérce az Android világában” – Kezünkben a Vivo X300 és X300 Pro
- Hivatalos a OnePlus 13 startdátuma
- Samsung Galaxy S23 Ultra - non plus ultra
- Google Pixel topik
Ú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
- Konzolokról KULTURÁLT módon
- Futás, futópályák
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- VR topik (Oculus Rift, stb.)
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Okos Otthon / Smart Home
- Black Friday november 29. / Cyber Monday december 2.
- AMD GPU-k jövője - amit tudni vélünk
- Renault, Dacia topik
- EarFun Air Pro 4+ – érdemi plusz
- További aktív témák...
- DELL Latitude 5320 13.3"FHD TOUCH IPS i5-1145G7 16GB/250GB Nvme SSD W11P, Üzletből, 27%ÁFÁ-s
- T14 Gen2i 27% 14" FHD IPS érintő i5-1145G7 16GB 256GB NVMe ujjlolv IR kam gar
- DELL Latitude 7320 Detachable 13"Touch i5-1130G7 8G/256G W11P, 2in1 Tablet/laptop,üzletből, 27%ÁFÁ-s
- -ÚJ,2 ÉV GAR- GAMER PC: RYZEN 5 4500-5600X +RX 6600/6700XT +16-64GB DDR4! SZÁMLA! 70 féle ház!
- Eladó Latitude 5520 15.6" FHD IPS i7-1185G7 NVIDIA GeForce MX450 16 1TB gar
- BESZÁMÍTÁS! MSI Z270 GAMING PRO CARBON alaplap garanciával hibátlan működéssel
- DELL PowerEdge R740 rack szerver - 2xGold 6130 (16c/32t, 2.1/3.7GHz), 64GB RAM, 10Gbit HBA330, áfás
- LG 55C4 - 48" OLED evo - 4K 144Hz - 0.1ms - NVIDIA G-Sync - FreeSync - HDMI 2.1 - A9 Gen7 CPU
- HIBÁTLAN iPhone 14 Pro Max 512GB Silver -1 ÉV GARANCIA - Kártyafüggetlen, 100% Akkumulátor
- HP 200W töltők (19.5V 10.3A) kis kék, kerek, 4.5x3.0mm, 928429-002
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



