| 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: 16 let
|
|||
0