Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Autor | Správa |
---|
Registrovaný: 01.01.09 Prihlásený: 22.06.11 Príspevky: 87 Témy: 25 | 25 |
Caute, tak mam triedu zatial nedokoncenu.
Problem je v tom ze neviem ako sa mam dostat k vypisaniu z db.
Kód: <?php class database {
private $connect; private $query;
public function __construct($host,$login,$password,$database) { $this->connect = mysql_connect($host,$login,$password) or die(mysql_error()); $dbselect = mysql_select_db($database) or die(mysql_error()); }
public function query($query) { $this->query = mysql_query($query) or die(mysql_error()); return $this->query; }
public function f_array() { $pole = array(); $i = 0; while($write = mysql_fetch_array($this->query)) { $pole[$i] = $write; $i++; } var_export($pole); return $pole;
}
public function f_row() { $write = mysql_fetch_row($this->query) or die(mysql_error()); $fields = mysql_num_fields($this->query); $i = 2; while($i <= $fields) { echo $write[$i]; $i++; }
}
public function write_result() { $rows = mysql_num_rows($this->query); if($rows>1) { $this->f_array(); } elseif($rows == 1) { echo $this->f_row(); } else { echo "Num rows = 0"; die(); } }
public function __destruct() { $mysql_close = mysql_close($this->connect); if($mysql_close) { exit();
} }
}
?>
Kód: <?php require_once ('database.class.php'); $db = new database("localhost","root","","ucms"); $db->query("SELECT * FROM tendre"); $db->write_result();
?>
|
|
|
Prepis funkciu __construct na:
Kód: public function __construct($host,$login,$password,$database) { mysql_connect($host,$login,$password) or die(mysql_error()); mysql_select_db($database) or die(mysql_error()); }
Problem je (bol) v tom ze link teda pripojenie k db si davas do premennej s ktorou dalej nepracujes, to iste s $dbselect.
|
|
Registrovaný: 01.01.09 Prihlásený: 22.06.11 Príspevky: 87 Témy: 25 | 25 |
$dbselect som zmazal ale connect nechavam lebo potom mysql_close($connect) v detruktore mam. Ale ja neviem ako vypisat vysledok v pripade ze sa spracuje cez f_array
|
|
|
janik366 píše: $dbselect som zmazal ale connect nechavam lebo potom mysql_close($connect) v detruktore mam. Ale ja neviem ako vypisat vysledok v pripade ze sa spracuje cez f_array
mysql_close() - pokial pracujes len s jednou databazou je ti to nanic ak to pouzijes zavre to poslednu db s ktorou si pracoval a je to zanedbatelne pri konci skriptu sa vzdy s vynimkou pconnect spojenie s databazou zavre co sa tyka toho vypisu v kode
Kód: public function write_result() { $rows = mysql_num_rows($this->query); if($rows>1) { $this->f_array(); } elseif($rows == 1) { echo $this->f_row(); } else { echo "Num rows = 0"; die(); } } som nenasiel jedinu proceduru ktora by to vypisala ak je $rows vacsie jak 1. Skus to zamenit za nieco taketo: Kód: public function write_result() { $rows = mysql_num_rows($this->query); if($rows>1) { $arr = $this->f_array(); foreach( $arr as $k => $v) { echo $k . " => " . $v; unset($k, $v); } } elseif($rows == 1) { echo $this->f_row(); } else { echo "Num rows = 0"; die(); } }
|
|
Registrovaný: 01.01.09 Prihlásený: 22.06.11 Príspevky: 87 Témy: 25 | 25 |
Diky
|
|
Registrovaný: 01.01.09 Prihlásený: 22.06.11 Príspevky: 87 Témy: 25 | 25 |
mimochodom, nedalo by sa to pouzit mimo triedy, aby som si echo pisal uz po vytvoreni instancie ?
uplny blud pisem ale cosi ako
echo "<b>".$write['niec']."</b>"........
aby som si mohol urcit co kedy vypisem, z tabulky - ktory stlpec kde a naformatovat trosku s html atd. ....
?
|
|
|
Vloz normlane do kodu ale az po zadefinovani triedy identifikator $db:
Kód: $rows = mysql_num_rows($db->query); if($rows>1) { $arr = $db->f_array(); foreach( $arr as $k => $v) { echo "<strong>" . $k . "</strong> je <strong>" . $v . "</strong>"; unset($k, $v); } unset($arr); } elseif($rows == 1) { echo $db->f_row(); } else { echo "Num rows = 0"; die(); }
|
|
Registrovaný: 01.01.09 Prihlásený: 22.06.11 Príspevky: 87 Témy: 25 | 25 |
nj, dat priamo do triedz <strong> to by som vedel, ale ja sa pytam ci sa to neda hodit mimo triedy, uz ked je vytvorena,
Kód: <?php require_once ('database.class.php'); $db = new database("localhost","root","","ucms"); $db->query("SELECT * FROM tendre"); $db->write_result();
?>
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 | 96 |
1. ak si robis vlastnu db triedu, zarucujem ti, ze nebude dobra a casom budes musiet dohackovavat
2. if($mysql_close) {exit();}
Naco ten exit?
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 27.07.07 Príspevky: 3948 Témy: 51 | 51 Bydlisko: Bratislava |
nesuhlasim - ak sa trieda dobre navrhne, nie je potrebne nic doplnat a menit - co, samozrejme, nie je pripad vyssie uvedenej triedy...
_________________ NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE |
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 | 96 |
tato konkretna mi velmi pripomina jednu, s ktorou sa stretavam bohuzial denne. Ulohou databazoveho abstract layeru je ulahcit pracu, ale ta, s ktorou musim pracovat, je viac na obtiaz ako na uzitok.
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v PHP, ASP | 25 | 1347 | 28.02.2008 13:04 martin90 | | v PHP, ASP | 6 | 684 | 08.04.2012 15:42 lolexc | | v PHP, ASP | 2 | 690 | 21.05.2011 20:18 p4tooo | | v PHP, ASP | 3 | 330 | 18.02.2013 7:20 DeiForm | | v PHP, ASP | 1 | 534 | 29.04.2010 17:32 stenley | | v PHP, ASP | 1 | 889 | 02.06.2009 11:02 walther | | [ Choď na stránku: 1, 2 ] v PHP, ASP | 41 | 3027 | 28.11.2009 16:01 Tominator | | v PHP, ASP | 7 | 2503 | 30.03.2015 12:59 majky358 | | v PHP, ASP | 11 | 501 | 13.11.2014 13:29 Mego | | [ Choď na stránku: 1, 2 ] v PHP, ASP | 32 | 2424 | 24.05.2008 15:04 Tominator | | v PHP, ASP | 1 | 385 | 16.02.2010 19:06 Ďuri | | v PHP, ASP | 6 | 572 | 26.02.2009 13:01 Flety | | v PHP, ASP | 23 | 1155 | 24.02.2009 23:09 Flety | | v PHP, ASP | 1 | 533 | 27.09.2010 20:52 walther | | v JavaScript, VBScript, Ajax | 3 | 613 | 20.07.2013 2:36 math-ew | | v Pamäte | 3 | 708 | 16.12.2010 20:09 majky358 |
|