<?php
class bd {
private $dbhost = "localhost";
private $dbuser = "admin";
private $dbpassword = "mypass";
private $dbname = "gamer";
private $tbname = "user";
private $link;
private $bdselect;
public function bd(){
global $link;
global $bdselect;
$link = mysql_connect($this->dbhost, $this->dbuser, $this->dbpassword) or die(mysql_error());
$bdselect = mysql_select_db($this->dbname,$link);
$query="CREATE TABLE IF NOT EXISTS `$this->tbname` (id int(3), lgn CHAR(40))";
$sql = query($query);
}
function query ($query){
$link = $GLOBALS['link'];
return @mysql_query($query, $link) or die();
}
}
?>
Не могу разобраться почему мне пишет что функция query не определена. Подскажите пожалуйста. Что то совсем никак не пойму. написал же вроде все. Спасибо.
Спустя 3 минуты, 17 секунд (5.09.2011 - 19:42) Nikitian написал(а):
Это не функция, а метод. Вызывать надо так
$sql = $this->query($query);
Спустя 1 минута, 43 секунды (5.09.2011 - 19:44) Winston написал(а):
$sql = $this -> query($query);
Спустя 40 секунд Winston написал(а):
Late
Спустя 5 минут, 27 секунд (5.09.2011 - 19:50) listat написал(а):
спасибо. через зис все внутри класса вызывается получается?
Спустя 7 минут, 32 секунды (5.09.2011 - 19:57) Winston написал(а):
Не все, а только динамические методы.
Спустя 49 секунд Winston написал(а):
Если бы метод был статический
То вызывал бы так
Спустя 49 секунд Winston написал(а):
Если бы метод был статический
static function query ($query){
$link = $GLOBALS['link'];
return @mysql_query($query, $link) or die();
}
То вызывал бы так
$sql = self :: query($query);
Спустя 8 минут, 37 секунд (5.09.2011 - 20:06) listat написал(а):
спасибо
Спустя 15 минут, 14 секунд (5.09.2011 - 20:21) listat написал(а):
а к примеру надо вызвать функцию из метода класса.
например
В другом файле создаю переменную этого класса и пытаюсь обратиться к функции de так:
Не работает. как такое можно сделать? и вообще можно ли?
например
<?php
class dd{
function dd(){
function de(){
echo 'bla bla';
}
}
}
?>
В другом файле создаю переменную этого класса и пытаюсь обратиться к функции de так:
$f= new dd;
$f->dd->de;
Не работает. как такое можно сделать? и вообще можно ли?
Спустя 13 минут, 37 секунд (5.09.2011 - 20:35) sharki написал(а):
listat
Свою функцию ты можешь вызывать ТОЛЬКО внутри dd() и всё...
Свою функцию ты можешь вызывать ТОЛЬКО внутри dd() и всё...
Спустя 2 минуты, 24 секунды (5.09.2011 - 20:37) listat написал(а):
спасибо.
Спустя 11 часов, 13 минут, 14 секунд (6.09.2011 - 07:50) linker написал(а):
Глобалсы - это лишнее, выкидывай нафиг.