CURLOPT_COOKIEJAR - сохранить куки в файл. CURLOPT_COOKIEFILE - считать куки из файла. PHP: curl_setopt($ch, CURLOPT_COOKIEJAR, "./cook"); curl_setopt($ch, CURLOPT_COOKIEFILE, "./cook");
PHP: protected function makeArray() { $arr = parent::makeArray(); $arr['name'] = $this->getName(); $arr['year'] = $this->getYear(); $arr['month'] = $this->getMonth(); $arr['day'] = $this->getDay(); return $arr; } public function getName() { return $this->name; Есть ли здесь ошибка?
PHP: if (isset($_FILES['image'])) { require_once(dirname(__FILE__) . '/objects/Group.php'); $group = Group::getById($work->getId()); $result = DB::selectQuery('SELECT COUNT(*) as pcount FROM w_pictures WHERE work_id = ' . $work->getId()); $row = $result->fetchRow(); $num = $row['pcount']; $pic->setPhotoFromForm($_FILES['image'], $group->getName() . ' ' . $work->getName() . ' ' . $num++); } $description = htmlentities($_POST['description'], ENT_QUOTES, 'utf-8'); $pic->setDescription($description) Ругается на эти строки, подскажите что не так?
скажи хоть что за ошибка выводиться? в строке $pic->setDescription($description) в конце ; поставь $pic->setDescription($description);
Если я не ошибаюсь, то у вас $group не является объектом ... Соответственно у нее нет метода getName(), либо у того объекта, что возвращает метод Group::getById($work->getId()); нету метода getName(). ЗЫ: В строке ($pic->setDescription($description) поставить "точку с запятой" надо
PHP: <?php require_once(dirname(__FILE__) . '/../base/DBObject.php'); class Group extends DBObject { public $table = 'w_groups'; private $name = null; private $year = 2009; private $month = 1; private $day = 1; public static function create() { return new self(); } public static function getById($groupId) { $new = new self(); return $new->loadById($groupId); } public function makeObject($array = array()) { parent::makeObject($array); $this-> setName($array['name'])-> setYear($array['year'])-> setMonth($array['month'])-> setDay($array['day']); return $this; } protected function makeArray() { $arr = parent::makeArray(); $arr['name'] = $this->getName(); $arr['year'] = $this->getYear(); $arr['month'] = $this->getMonth(); $arr['day'] = $this->getDay(); return $arr; } public function getName() { return $this->name; } public function setName($name) { $this->name = $name; return $this; } public function getDay() { return $this->day; } public function setDay($day = 1) { $this->day = $day; return $this; } public function getMonth() { return $this->month; } public function setMonth($month = 1) { $this->month = $month; return $this; } public function getYear() { return $this->year; } public function setYear($year = 2009) { $this->year = $year; return $this; } } Вот инклуд вроде там должна прописываться группа я правильно поняла?
Добрый день. Подскажите пожалуйста такую вещь: onclick="location.href='с понтом путь' " можно ли каким-то образом сделать задержку, к примеру в 2 сек, перед переходом на страницу согласно скрипта? Заранее пасибо.
Это про JS вопрос, не в той теме спрашиваете... А по делу можно так: PHP: onclick="sleep(2);location.href='с понтом путь' " или pause(2); Точно не помню :-[
PHP: <?php require_once(dirname(__FILE__) . '/DB.php'); class DBObject { public $table = ''; private $id = null; public function __construct() { return $this; } public static function create() { return new self(); } public static function getById($groupId) { $new = new self(); $new->loadById($groupId); return $new; } public function loadById($groupId) { $query = 'SELECT * FROM ' . $this->table . ' WHERE id = ' . $groupId; $result = DB::selectQuery($query); if ($result->count == 0) return false; $row = $result->fetchRow(); $this->makeObject($row); return $this; } public function makeObject($array = array()) { $this->id = $array['id']; return $this; } public function getId() { return $this->id; } protected function makeArray() { return array( 'id' => $this->getId() ); } public function delete() { if (!$this->getId()) return $this; $query = 'DELETE FROM ' . $this->table . ' WHERE id = ' . $this->getId(); DB::execQuery($query); return $this; } public function save() { if ($this->getId()) { return $this->update(); } else { return $this->add(); } } public function update() { $arr = $this->makeArray(); unset($arr['id']); $query = 'UPDATE ' . $this->table . ' SET '; $i = 0; foreach($arr as $key => $value) { $i++; if ($i > 1) { $query .= ', '; } $query .= $key . ' = "' . $value . '"'; } $query .= 'WHERE id = ' . $this->getId(); DB::execQuery($query); return $this; } public function add() { $arr = $this->makeArray(); if (isset($arr['id'])) { unset($arr['id']); } $query = 'INSERT INTO ' . $this->table . ' (' . implode(', ', array_keys($arr)) . ')'; $query .= 'VALUES ('; $i = 0; foreach($arr as $value) { $i++; if ($i > 1) { $query .= ', '; } $query .= '"' . $value . '"'; } $query .= ')'; $this->id = DB::insertQuery($query); Вот он
Косяк в том что в классе Group в методе: PHP: public static function getById($groupId) { $new = new self(); return $new->loadById($groupId); } Возвращается объект типа DBObject, а не Group... А у того в свою очередь нет метода getName()
Полагаю так, заменить тот метод что есть на вот такой: PHP: public static function getById($groupId) { $new = new self(); $new->loadById($groupId); return $new; }