2011-10-14 3 views
-1

Это делает ошибку, все, что я хочу, чтобы это сделать, это вернуть $ fcEnable как результат из базы данных в этом классе .......PHP класс не работает

Parse error: syntax error, unexpected T_VARIABLE in /home/site/page.php

$VisitorIP = ip2long($_SERVER['REMOTE_ADDR']); 
$IPCheckQ = mysql_query("SELECT * FROM `blah` WHERE `ip` = '" . $VisitorIP . "'"); 
$IPCheckR = mysql_fetch_array($IPCheckQ); 
class GeoIP extends Page { 
public $fcEnable = $IPCheckR['x']; 
} 
+2

Почему вы не указали номер строки с сообщением об ошибке? –

+0

Вы не можете назначить переменную 'public $ fcEnable' в качестве значения. Используйте конструктор или какой-либо другой метод, чтобы установить его значение. – Furicane

+0

как насчет отображения всего кода? это беспорядок. Есть только «случайный» класс, сидящий под вашим '$ IPCheckR' – Jakub

ответ

1

Вы не можете назначьте другую переменную var внутри класса.

class GeoIP extends Page 
{ 
public $fcEnable; 

function __construct($fcEnable = null) 
{ 
     $this->fcEnable = $fcEnable 
} 

} 
-1

$fcEnable находится в пределах объема GeoIP. Код, который выходит за рамки класса, должен быть выполнен внутри класса, или вот так:

class GeoIP extends Page 
{ 
    public $fcEnable; 

    public function __construct($ipcheck) 
    { 
     $this->fcEnable = $ipcheck['x']; 
    } 
} 

$VisitorIP = ip2long($_SERVER['REMOTE_ADDR']); 
$IPCheckQ = mysql_query("SELECT * FROM `blah` WHERE `ip` = '" . $VisitorIP . "'"); 
$IPCheckR = mysql_fetch_array($IPCheckQ); 
$gip = new GeoIP($IPCheckR); 
Смежные вопросы