Archívum - Júl 2009
július 12
Adatbázis és hibakezelés felsőfokon
Sziasztok!
Kaptam egy jó kis projectet, amit a közeljövőben kell majd elkezdeni. Szakmailag kihívásnak tekintem, habár jelenlegi tudásommal is simán meg tudnám csinálni, csak nem mindegy hogyan(!), így úgy döntöttem, hogy rátanulok és megpróbálom a lehető legprofibbra megírni. Viszonylag kevés tapasztalatom van OOPban, ezért lenne pár kérdésem...
1. Szeretném - ha úgy döntene az ügyfél, hogy átpakolja a lapot egy másik szerverre - akkor ne legyen belőle túl sok utómunka. Alapvetően MySQL lenne a DB. mysqli kiterjesztéssel gondoltam kezelni és arra gondoltam, hogy létrehozok egy interface-t, ami kiköti miket kell megvalósítani egy pl. DB_MySQL.php osztályban. Egy ilyen példát láttam neten... (ez most nem mysqli, mert csak példa)Azt értem, hogy MSSQL-re váltásnál csak egy DB_MSSQL.php-ben csak mssql_query -re kellene átírnom a függvényt, de mi van akkor ha "logikában lévő" lekérdezés nem fut le az új adatbázison? Elképzelhető, hogy annyira különbözni fognak SQLben, hogy az új adatbázis nem érti meg a lekérdezést? Elég gáz lenne, hisz végig kellene nézni az összes oldalt. Elképzelhető h ilyen probléma lesz? Mit lehet ez ellen tenni? A lekérdezéseket is osztályba kellene foglalni?
2. Hibakezelés. Az lenne a cél, hogy hiba esetén kiírjunk valami egyszerű hibaüzenetet és a bővebb információt lementsünk, mondjuk adatbázisba, de nem is ezzel van a gond. Nem teljesen értem a kivétel kezelést. Értem, hogy kivételt kell dobnom ha valami nem oké, de a try catch blokkokat hova kellene tennem? Egy osztályon belül sok metódus van. Mindegyiken belül legyen try catch? Vagy az egész osztályt kellene try-ba tennem? Szóval nem teljesen értem, hogy ha több osztályt használok, akkor hogy lehet ezt a hibakezelést központosítani.
Kaptam egy jó kis projectet, amit a közeljövőben kell majd elkezdeni. Szakmailag kihívásnak tekintem, habár jelenlegi tudásommal is simán meg tudnám csinálni, csak nem mindegy hogyan(!), így úgy döntöttem, hogy rátanulok és megpróbálom a lehető legprofibbra megírni. Viszonylag kevés tapasztalatom van OOPban, ezért lenne pár kérdésem...
1. Szeretném - ha úgy döntene az ügyfél, hogy átpakolja a lapot egy másik szerverre - akkor ne legyen belőle túl sok utómunka. Alapvetően MySQL lenne a DB. mysqli kiterjesztéssel gondoltam kezelni és arra gondoltam, hogy létrehozok egy interface-t, ami kiköti miket kell megvalósítani egy pl. DB_MySQL.php osztályban. Egy ilyen példát láttam neten... (ez most nem mysqli, mert csak példa)
public function query($query) {
return mysql_query($query, $this->link);
}
2. Hibakezelés. Az lenne a cél, hogy hiba esetén kiírjunk valami egyszerű hibaüzenetet és a bővebb információt lementsünk, mondjuk adatbázisba, de nem is ezzel van a gond. Nem teljesen értem a kivétel kezelést. Értem, hogy kivételt kell dobnom ha valami nem oké, de a try catch blokkokat hova kellene tennem? Egy osztályon belül sok metódus van. Mindegyiken belül legyen try catch? Vagy az egész osztályt kellene try-ba tennem? Szóval nem teljesen értem, hogy ha több osztályt használok, akkor hogy lehet ezt a hibakezelést központosítani.
Optimize Your Web Images Online With Smush It
Webes eszköz a Yahoo-tól képfájlok optimalizációjára
■ Memóriaigény mérése
Sziasztok!
Azt szeretném kérdezni, hogy egy php oldal betöltéséhez felhasznált memória mennyiségét hogyan lehet megtudni?
Nagy látogatottságú oldal tervezésénél hogy szokás tervezni a szükséges erőforrásokat?
■ Azt szeretném kérdezni, hogy egy php oldal betöltéséhez felhasznált memória mennyiségét hogyan lehet megtudni?
Nagy látogatottságú oldal tervezésénél hogy szokás tervezni a szükséges erőforrásokat?
Permalink és ID visszakeresés
Sziasztok!
Gyakorlott fejlesztők véleményét szeretném kérni a következő problémában.
Egy CMS-t fejlesztek és szeretnék permalink alapú oldal elérést. Az lenne a kérdésem, hogy ha a permalink-ből nem lehet egyedileg meghatározni a megjelenítendő tartalmat, ti milyen eljárást használtok. A problémám pl: http://siteom.hu/blog/majusi_kirandulas_bakony ami a http://siteom.hu/index.php?modul=blog&id=234. Az ID az adatbázisban tárolt oldal/tartalom kulcsa. A "majusi_kirandulas_bakony" string és a 234 között ugye nincs egyértelmű leképzés. Hogy a megfelelő tartalmat tudjam megjeleníteni az egyes permalinkekhez, vagy a táblában tárolom az egyes tartalmakhoz a hozzájuk tartozó permalinket vagy egy külön katalógust használok a permalink=>ID/kulcs megfeleltetésekhez. Az előbbit szeretném elkerülni, mert nem akarok egy ekkora mezőre indexet építeni, tekintve, hogy sokezer rekord lesz a táblában. És ha minden egyes oldalletöltésnél plusz egy lekérdezést le kell futtatni, már nem tartom annyira jó ötletnek.
A külön katalógusra a következőt találtam ki.
Gyakorlott fejlesztők véleményét szeretném kérni a következő problémában.
Egy CMS-t fejlesztek és szeretnék permalink alapú oldal elérést. Az lenne a kérdésem, hogy ha a permalink-ből nem lehet egyedileg meghatározni a megjelenítendő tartalmat, ti milyen eljárást használtok. A problémám pl: http://siteom.hu/blog/majusi_kirandulas_bakony ami a http://siteom.hu/index.php?modul=blog&id=234. Az ID az adatbázisban tárolt oldal/tartalom kulcsa. A "majusi_kirandulas_bakony" string és a 234 között ugye nincs egyértelmű leképzés. Hogy a megfelelő tartalmat tudjam megjeleníteni az egyes permalinkekhez, vagy a táblában tárolom az egyes tartalmakhoz a hozzájuk tartozó permalinket vagy egy külön katalógust használok a permalink=>ID/kulcs megfeleltetésekhez. Az előbbit szeretném elkerülni, mert nem akarok egy ekkora mezőre indexet építeni, tekintve, hogy sokezer rekord lesz a táblában. És ha minden egyes oldalletöltésnél plusz egy lekérdezést le kell futtatni, már nem tartom annyira jó ötletnek.
A külön katalógusra a következőt találtam ki.
Próbáljuk a kódot átnézni
Hello,
A napokban vacakoltam egy menuvel es szuksegem lenne par tanacsra. Peldaul, hogy tudnam a kodot egyszerusiteni:Nem vagyok egy jQuery asz, es biztos sokat ismeteltem a kodban, gondolom lehetne egyrusiteni.
Egyebkent az oldal mukodesben itt lathato: http://progra.ro/menu2/
Barmilyen tanacsot ertekelek, koszonom! Esetleg mit lehetne modositani, kiszedni, berakni!
■ A napokban vacakoltam egy menuvel es szuksegem lenne par tanacsra. Peldaul, hogy tudnam a kodot egyszerusiteni:
$(document).ready(function() {
var links = $('.buttons a');
/**** AKTIV LINKEK ****/
links.each(function() {
// Megnezuk ha leteznek aktiv linkek es megkapjuk mindegyik indexet
var index = links.index(this);
// Az aktiv linkeket szinezuk a tobbit pedig nem
if ($(this).hasClass('active')) {
$(this).css('backgroundPosition', '-' + index * 200 + 'px -50px');
}
else {
$(this).css('backgroundPosition', '-' + index * 200 + 'px -0px');
}
});
/**** AZ ANIMACIO ****/
links.hover(function() {
// Ha nincs aktiv linken az eger akkor johet az animacio!
if (!$(this).hasClass('active')) {
var index = links.index(this);
$(this).stop().animate({backgroundPosition:"(-" + 200 * index + "px -50px)"}, {duration: 600})
}
}, function() {
// Ha leveszuk az egeret a linkrol eltunik az animacio
if (!$(this).hasClass('active')) {
var index = links.index(this);
$(this).stop().animate({backgroundPosition:"(-" + 200 * index + "px -0px)"}, {duration:800})
}
});
});
Egyebkent az oldal mukodesben itt lathato: http://progra.ro/menu2/
Barmilyen tanacsot ertekelek, koszonom! Esetleg mit lehetne modositani, kiszedni, berakni!
július 12
Firefox tiltások feloldása?
Sziasztok.
Volna egy kis problémám a firefoxal.
Van egy komplet anyagom ami régi szabványok szerint van megírva htmlben és flashben. A firefox erre úgy reagál, hogy letilt egy csomó mindent és a hibakonzolba ilyeneket rak:
Engedély megtagadva tulajdonság beállításához
Engedély megtagadva tulajdonság lekérdezéséhez
Windows.sessionID meg WindowscurrentPage....
Az explorer(v.6) kiírja, hogy az oldal nem biztonságos, de fel lehet oldani a tilalmat és használható lesz az oldal. Fel lehet ezt oldani firefoxnál valahogy?
■ Volna egy kis problémám a firefoxal.
Van egy komplet anyagom ami régi szabványok szerint van megírva htmlben és flashben. A firefox erre úgy reagál, hogy letilt egy csomó mindent és a hibakonzolba ilyeneket rak:
Engedély megtagadva tulajdonság beállításához
Engedély megtagadva tulajdonság lekérdezéséhez
Windows.sessionID meg WindowscurrentPage....
Az explorer(v.6) kiírja, hogy az oldal nem biztonságos, de fel lehet oldani a tilalmat és használható lesz az oldal. Fel lehet ezt oldani firefoxnál valahogy?
Leggyakoribb számsor keresése egy számsorhalmazban
Sziasztok!
Van egy problémám amit nem tudok megoldani:
Azt szeretném megcsinálni, hogy van egy két dimenziós tömböm, pl:
3,4,5,6,7,8,9,10,11
3,4,5,6,12,22,23
1,2,3,4,5,6,7,8,9
20,21,22,23,24,25,26,27,8
Az lenne a feladat, hogy keressük ki azt a számsorrészletet melyek a legtöbbször szerepelnek, úgy, hogy a lehető legtöbb sorban benne van.
A példámban pl a megoldás az a 3,4,5,6 mert ez minden sorban szerepel(bár nem kell minden sorban szerepelnie).
Bármilyen segítség jól jön, mert nem tudom megcsinálni:(
■ Van egy problémám amit nem tudok megoldani:
Azt szeretném megcsinálni, hogy van egy két dimenziós tömböm, pl:
3,4,5,6,7,8,9,10,11
3,4,5,6,12,22,23
1,2,3,4,5,6,7,8,9
20,21,22,23,24,25,26,27,8
Az lenne a feladat, hogy keressük ki azt a számsorrészletet melyek a legtöbbször szerepelnek, úgy, hogy a lehető legtöbb sorban benne van.
A példámban pl a megoldás az a 3,4,5,6 mert ez minden sorban szerepel(bár nem kell minden sorban szerepelnie).
Bármilyen segítség jól jön, mert nem tudom megcsinálni:(
Javascript popup galéria
Sziasztok!
Van egy Javascript popup Galériám aminek a kódja a következő:
Csak egy gond van vele, hogy Firefox alatt új ablakban nyitja meg az oldalt, nem pedig popup (ebben az esetben: 500x500 -ba).
Előre is köszönöm a segítséget.
■ Van egy Javascript popup Galériám aminek a kódja a következő:
function createPopup() {
var x = document.getElementsByTagName('a');
for(var i = 0; i < x.length; i++) {
if(x[i].getAttribute('rel') == 'gallerypopup') {
x[i].onClick = new Function('window.open("' + x[i].getAttribute('href') + '","myWindow",
"status=no,height=500,width=500,location=yes,menubar=no,resizable=yes,toolbar=no")');
}
}
}
window.onload = createPopup;
var x = document.getElementsByTagName('a');
for(var i = 0; i < x.length; i++) {
if(x[i].getAttribute('rel') == 'gallerypopup') {
x[i].onClick = new Function('window.open("' + x[i].getAttribute('href') + '","myWindow",
"status=no,height=500,width=500,location=yes,menubar=no,resizable=yes,toolbar=no")');
}
}
}
window.onload = createPopup;
Csak egy gond van vele, hogy Firefox alatt új ablakban nyitja meg az oldalt, nem pedig popup (ebben az esetben: 500x500 -ba).
Előre is köszönöm a segítséget.