Autor | Zpráva | ||
---|---|---|---|
Agerion Profil * |
#1 · Zasláno: 12. 12. 2007, 18:20:06
Zdravim!
Chtel jsem se zeptat jak psat vrstvu pro pristup k db pomoci mysqli. Resp mam napsanou tridu, ktera se k db pripoji. Ale nevim jak se pripojit k ni z jine tridy, pak mi to zacne psat ruzne chyby typu ze pouzivam neobjektove data, nejde se spojit s db pres socket apod. class sqllayer { private $server=""; private $user=""; private $pass=""; private $db=""; public $objekt; function __construct() { $this->objekt= new mysqli($this->server,$this->user,$this->pass,$this->db); } } a pokud se z jine funkce se pokusim zavolat timto stylem class admin { function showusers() { $conn=new sqllayer(); $result=$conn->objekt->query("SELECT nick FROM kb_login"); while ( $row = $result->fetch_assoc() ) { echo $row[nick]; } } tak to nejde a hlasi chybu. Poradi nekdo kde je zakopany pes? Dekuji |
||
BetaCam Profil |
#2 · Zasláno: 12. 12. 2007, 18:43:19
No to je dost těžké říct když nevíme jak máš ty třídy poskládané :)
|
||
BetaCam Profil |
#3 · Zasláno: 12. 12. 2007, 18:53:39
Nic méně jak tak na to koukám tak v podstatě tam chybu nemáš.
Pokud spustíš následující script mělo by to normálně projít. class sqllayer { private $server=""; private $user=""; private $pass=""; private $db=""; public $objekt; function __construct() { $this->objekt= new mysqli($this->server,$this->user,$this->pass,$this->db); } } class admin { function showusers() { $conn=new sqllayer(); $result=$conn->objekt->query("SELECT nick FROM kb_login"); while ( $row = $result->fetch_assoc() ) { echo $row[nick]; } } } $admin = new admin; $admin->showusers(); Pokud si vyplníš údaje k DB nevidim důvod proč by to nemělo "NICKy" vypsat. |
||
Mastodont Profil |
#4 · Zasláno: 12. 12. 2007, 19:10:49
Agerion
Z toho, co tu prezentuješ, není vůbec jasné, proč takovou třídu psát. Mysqli samo o sobě je objektové a třída sqllayer má význam .. jaký? |
||
TFSi Profil |
#5 · Zasláno: 12. 12. 2007, 21:31:22
|
||
Časová prodleva: 16 let
|
0