 |
Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Comunitatea PHP Romania
|
| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
pdaniel
Data înscrierii: 18/Ian/2005
Mesaje: 63
|
| Trimis: Mie Mar 22, 2006 12:18 pm Titlul subiectului: apelare din clasa |
|
|
Am si urmatoarea clasa
Citat:
<?
// Conectare la baza de date
class MySQL{
var $host;
var $dbUser;
var $dbPass;
var $dbName;
var $dbConn;
var $connectError;
function MySQL($host, $dbUser, $dbPass, $dbName){
$this->host = $host;
$this->dbUser = $dbUser;
$this->dbPass = $dbPass;
$this->dbName = $dbName;
$this->connectToDb();
}
function connectToDb(){
if (!$this->dbConn = @mysql_connect($this->host, $this->dbUser, $this->dbPass)) {
trigger_error('Nu ma pot conecta la server');
$this->connectError = true;
}else if (!@mysql_select_db($this->dbName, $this->dbConn)) {
trigger_error('Nu pot selecta baza de date');
$this->connectError = true;
}
}
function esteEroare(){
if ($this->connectError)
return true;
$error = mysql_error($this->dbConn);
if (empty($error))
return false;
else
return true;
}
function &query($sql){
if (!$queryResource = mysql_query($sql, $this->dbConn)) {
trigger_error('Query a esuat'.mysql_error($this->dbConn).'SQL : '.$sql);
}
return new MySQLResult($this, $queryResource);
}
}
class MySQLResult{
var $mysql;
var $query;
function MySQLResult(&$mysql, $query){
$this->mysql = &$mysql;
$this->query = $query;
}
function fetch(){
if ($row = mysql_fetch_array($this->query, MYSQL_ASSOC)) {
return $row;
}else if ($this->size() > 0) {
mysql_data_seek($this->query, 0);
return false;
}else {
return false;
}
}
function esteEroare(){
return $this->mysql->esteEroare();
}
function size () {
return mysql_num_rows($this->query);
}
}
?>
In pagina mea vreau sa fac un mysql_num_rows, ceva de genu
Citat:
session_start();
if ((!isset($_SESSION['user']) || ($_SESSION['drept']!=1))) {
$sql = "SELECT * FROM stiri WHERE apMain=1 AND statusPg=1 AND zona=1";
$handle = $db->query($sql);
while ($row = $handle->fetch()) {
echo $row['denStire']."<br>".$row['conStire'];
}
$nrRez = mysql_num_rows($handle);
Problema este ca nu merge. Tot mysql_num_rows imi face si functia size() din clasa mea. Cum pot apela eu functia respectiva din afara clasei. Sau cum pot face mysql_num_rows totusi. Multumesc. |
|
| Sus |
|
carco
Data înscrierii: 27/Mai/2004
Mesaje: 2796
Locație: Bucuresti
|
| Trimis: Mie Mar 22, 2006 12:23 pm Titlul subiectului: |
|
|
resursa de tip result e pusa in in membrul query, deci ar trebui sa ai:
mysql_num_rows($handle->query);
(de ce nu fol. totusi size() sau de ce mai fol. clasa aia daca nu-i folosesti metodele?) |
|
| Sus |
|
raul_
Data înscrierii: 15/Sep/2005
Mesaje: 711
|
| Trimis: Mie Mar 22, 2006 12:25 pm Titlul subiectului: Re: apelare din clasa |
|
|
| --- |
|
| Sus |
|
pdaniel
Data înscrierii: 18/Ian/2005
Mesaje: 63
|
| Trimis: Mie Mar 22, 2006 12:50 pm Titlul subiectului: |
|
|
| :D Merci. Nu stiu ce naiba a fost in capul meu. |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |
|