17.08.2007, 20:03
общий
это ответ
Здравствуйте, Бобровский Сергей Сергеевич!
Справедливости ради надо сказать, что использовать var можно - если на хостинге, который Вы используете, стоит PHP 4. Такое приложение будет работать на любой версии. Так что если Вам следует руководствоваться соображениями совместимости, то надо исходить из версии 4, а это как раз var. Впрочем, думаю, что не очень-то и надо, потому что PHP4 уже морально устарел.
Но если Вы используете Денвер, не потрудившись установить PHP5, то public использовать нельзя. Я имею ввиду, что у Вас PHP 4 установлен в качестве обработчика файлов PHP по умолчанию. При этом PHP5 установлен как CGI. Сталкивался я с такой ситуацией. Именно, когда работал с Денвером.
Отвед на второй вопрос:
Чтобы вывести id, надо в конструкторе обратиться к базе данных. Либо написать метод для класса, который вытаскивает значение из базы, а потом его прописать в конструктор. Ведь как у Вас? Вы написали конструктор. Конструктор - функция которая вызывается раньше всех функций класса. Вы присваиваете свойству значение элемента массива, которого Вы еще не получили. Пропишите так(см. приложение). Итак, последовательность действий:
1) получить значение в конструкторе
2) Присвоить значение свойству
Приложение:
<?//классclass minipic{ var $id; function __construct($pic){$query = "SELECT * FROM pictures WHERE id=\‘83\‘";$result = mysql_query($query);$pic = mysql_fetch_array($result); $this->id = $pic[\‘id_pic\‘]; } }