Autor | Zpráva | ||
---|---|---|---|
emissary Profil |
Dobrý deň,
chcem sa spýtať, či neexistuje nejaká funkcia, ktorá by mi výsledok z dotazu na databázu dala do môjho požadovaného tvaru. Uvádzam kód: Tabuľka v databáze: CREATE TABLE student ( studentid SERIAL NOT NULL PRIMARY KEY, name varchar(255) ); Kód v PHP: require_once('class.Student.php'); class StudentFactory { public function getStudent($id) { $sql = "SELECT * FROM student WHERE studentid = $id"; $data; // kód ktorý potrebujem vytvoriť if(is_array($data) && sizeof($data)) { return new Student ($data[0]['studentid'], $data[0]['name'] ); } else { throw new Exception("Student s identifikátorom $id neexistuje"); } } } Otázka teda znie, ako mám vytvoriť pripojenie k databáze. Resp. či to mám spravené dobre. A chcem vedieť, či existuje nejaká funkcia, ktorá dokáže $result previesť takto: $id = 1; $sql = "SELECT * FROM student WHERE studentid = $id"; $mysqli = new MySQLi('localhost', 'admin', '12345', 'school'); //Vôbec netuším, či sa PHP komplet postará o objekt MySQLi ktorý bude schopný fungovať s použitím rôznych metód ako je vidieť v riadku nižšie. $result = $mysqli->query($sql); $data = nejaka_funkcia($result); //existuje nejaká funkcia ktorá by dokázala spraviť v data pole v takom tvare ako použijem v riadku nižšie? $idStudenta = $data[0]['studentid']; $nameStudenta = $data[0]['name']; echo "Toto je študent $nameStudenta s ID $idStudenta.<br>\n"; echo "Toto je študent $data[0]['name'] s ID $data[0][studentid].<br>\n"; // $data[0]['name'] = 'name' je názov stĺpca v tabuľke databáze ako aj 'studentid' v $data[0]['studentid'] |
||
peta Profil |
while + http://us2.php.net/manual/en/mysqli-result.fetch-assoc.php
Je to v dokumentaci i s prikladem. Misto print_r to jen ulozis do pole $data[]=... |
||
Časová prodleva: 11 let
|
0