Autor | Zpráva | ||
---|---|---|---|
rad Profil * |
#1 · Zasláno: 4. 1. 2011, 13:35:16
Mam tyto funkce
chtel bych napriklad zavolat funkci escape zkousel jsem to takto ale nefunguje to jaky je spravny zapis volani funkce z class ? if (isset($_POST['textsend'])) { $text=$_POST['text']; $bodytext=$_POST['bodytext']; $bodytext=escape($bodytext); $insert_query = $db->query("INSERT INTO text VALUES('','$text','$bodytext')"); } class database { var $SQL; var $lastquery; var $count=0; function database($database='portfolio', $server='localhost', $username='root', $password='') { $this->SQL = mysql_connect($server, $username, $password) or die('Error: '.mysql_error()); mysql_select_db($database, $this->SQL);} function query($query, $return='true') { $this->lastquery = $query; $this->count++; $result = mysql_query($query, $this->SQL) or die('Error with Query('.$query.'): '.mysql_error()); if ($return) return $result; } function num_rows(&$result){ return @mysql_num_rows($result); } function fetch_array(&$result){ return @mysql_fetch_array($result); } function fetch_assoc(&$result){ return @mysql_fetch_assoc($result); } function escape(&$string){ return mysql_real_escape_string($string); } function result($query, $column, $id=0){ return mysql_result($query, $id, $column); } } ?> |
||
__construct Profil |
#2 · Zasláno: 4. 1. 2011, 13:46:39
Tak za prvé nejedná sa o funkciu ale o metódu (aj keď sa to označuje slovom
function ) a volá sa zápisom:
$menoObjektu->menoFunkcie($argument); |
||
Lamicz Profil |
#3 · Zasláno: 5. 1. 2011, 17:59:03 · Upravil/a: Lamicz
$db = new database; $db->... Abys se tridou mohl pracovat, musis napred vytvorit jeji instanci (objekt) |
||
Tori Profil |
#4 · Zasláno: 5. 1. 2011, 19:00:53 · Upravil/a: Tori
Druhá možnost je definovat metodu jako statickou - pak je možné jí volat nezávisle na tom, jestli existuje instance třídy nebo ne.
class database { // ... static function escape($string) { //.. } } // volá se: jménoTřídy::jménoStatickéMetody($parametry); Jinak je zbytečné té metodě předávat parametr odkazem, když přitom ona s ním nepracuje, ale vrací hodnotu. |
||
Časová prodleva: 13 let
|
0