Autor | Zpráva | ||
---|---|---|---|
cheli Profil |
#1 · Zasláno: 23. 4. 2010, 11:33:27
Zdravím, koukněte na muj kód a zkuste mi prosím nějak poradit, jak bych v něm mohl ověřit připojení na server či k db. Zatím se OOP učím a tenhle kód je vytvořen jen k pochopení postupů OOP:
class Mysql { public $server; public $user; public $pw; public $db; function pripojeni() { $link = mysql_connect($this->server,$this->user,$this->pw); mysql_select_db($this->db); mysql_query('SET NAMES utf-8'); } } $mysql = new Mysql(); $mysql -> server = 'localhost'; $mysql -> user = 'root'; $mysql -> pw = ''; $mysql -> db = 'gb'; $mysql -> pripojeni(); |
||
__construct Profil |
#2 · Zasláno: 23. 4. 2010, 12:16:39
function pripojeni() { $link = mysql_connect($this->server,$this->user,$this->pw); mysql_select_db($this->db); mysql_query('SET NAMES utf-8'); return $link; } mysql_connect vracia identifier pripojenia k DB pri úspechu a FALSE pri zlyhaní .. takže stačí overiť if($mysql->pripojeni()){ // ak je pripjený k DB .. }else{ // ak sa nepripojil .. } ale nepáči sa mi ten OO prístup aký používaš.. pozri si tento článok .. je celkom podarený |
||
cheli Profil |
#3 · Zasláno: 23. 4. 2010, 12:43:41
__construct:
já se to zatim učim. Jen zkoušim věci, co mě napadnou. Přijde mi to pak zábavnější, než to zkoušet podle nějakého návodu či knížky. Ale dík za tip článku. Určitě si z toho zkusim něco vzít. Měj se |
||
AM_ Profil |
#4 · Zasláno: 23. 4. 2010, 12:53:06
Především se vykašli na psaní si vlastní třídy pro připojování k MySQL. Tím začíná spousta lidí, ale o tom OOP není, pokud chceš objekty, použij objektové již hotové rozhraní mysqli, které je součástí PHP5.
|
||
__construct Profil |
#5 · Zasláno: 23. 4. 2010, 13:29:44 · Upravil/a: __construct
cheli:
„já se to zatim učim. Jen zkoušim věci, co mě napadnou. Přijde mi to pak zábavnější, než to zkoušet podle nějakého návodu či knížky. Ale dík za tip článku. Určitě si z toho zkusim něco vzít. Měj se“ jj to Ti schvaľujem, ale nie je na škodu čítať nejaké návody, pretože to píšu (teda zväčša) ľudia čo OOP rozumejú .. a podľa toho čo vidím tak Ty by si si mal najprv o OO niečo všeobecné naštudovať. napr. tie premenné s heslom, menom, atď. by som rozhodne nedeklaroval ako public ale ako private (sú to citlívé údaje a nechceš aby k nim mal prístup niekto iný mimo Tvojej triedy) pridal by som tam premennú pripojenie a tú deklaroval ako public (bol by to identifikátor pripojenia) a tú funkciu by som deklaroval ako public __contruct, atď .. Len sa Ti snažím povedať, že keď sa to učíš sám, môžeš si osvojiť nejaké "zlozvyky" .. |
||
Lamicz Profil |
#6 · Zasláno: 24. 4. 2010, 04:57:34
Z hlediska spravneho OOP navrhu by nemely byt zadny tridni promenny public, maximalne protected. K pristupu k nim by se mely pouzit getter/setter metody. Taktez by objekt nemel nic delat sam pri vytvoreni (new), tzn. konstruktor by mel byt prazdny nebo opravdu spravne napsany vzhledem k pouziti. Jinak jak napsal AM_, tohle opravdu neni OOP.
|
||
Časová prodleva: 14 let
|
0