Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

12.02.2009, 16:52
|
|
Участник форума
Регистрация: 12.11.2006
Сообщений: 213
Провел на форуме: 347573
Репутация:
185
|
|
Сообщение от Gadik
Добрый день. Подскажите пожалуйста такую вещь:
onclick="location.href='с понтом путь' "
можно ли каким-то образом сделать задержку, к примеру в 2 сек, перед переходом на страницу согласно скрипта?
Заранее пасибо.
Это про JS вопрос, не в той теме спрашиваете... А по делу можно так:
PHP код:
onclick="sleep(2);location.href='с понтом путь' "
или pause(2);
Точно не помню :-[
|
|
|

12.02.2009, 16:55
|
|
Участник форума
Регистрация: 29.05.2006
Сообщений: 148
Провел на форуме: 1159891
Репутация:
30
|
|
спасибо! про место вопроса поздно понял)
|
|
|

12.02.2009, 17:06
|
|
Новичок
Регистрация: 11.02.2009
Сообщений: 21
Провел на форуме: 36983
Репутация:
0
|
|
Сообщение от -=Static=-
А что вернет метод DBObject::loadById() ???
Не наю....
|
|
|

12.02.2009, 17:34
|
|
Участник форума
Регистрация: 12.11.2006
Сообщений: 213
Провел на форуме: 347573
Репутация:
185
|
|
Покажи исходник класса DBObject
|
|
|

12.02.2009, 18:02
|
|
Новичок
Регистрация: 11.02.2009
Сообщений: 21
Провел на форуме: 36983
Репутация:
0
|
|
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);
Вот он
|
|
|

12.02.2009, 18:13
|
|
Участник форума
Регистрация: 12.11.2006
Сообщений: 213
Провел на форуме: 347573
Репутация:
185
|
|
Косяк в том что в классе Group в методе:
PHP код:
public static function getById($groupId)
{
$new = new self();
return $new->loadById($groupId);
}
Возвращается объект типа DBObject, а не Group... А у того в свою очередь нет метода getName()
|
|
|

12.02.2009, 18:14
|
|
Новичок
Регистрация: 11.02.2009
Сообщений: 21
Провел на форуме: 36983
Репутация:
0
|
|
А подскажи плиз как этот косяк исправить буду очень признательна
|
|
|

12.02.2009, 18:19
|
|
Участник форума
Регистрация: 12.11.2006
Сообщений: 213
Провел на форуме: 347573
Репутация:
185
|
|
Полагаю так, заменить тот метод что есть на вот такой:
PHP код:
public static function getById($groupId)
{
$new = new self();
$new->loadById($groupId);
return $new;
}
|
|
|

12.02.2009, 18:22
|
|
Новичок
Регистрация: 11.02.2009
Сообщений: 21
Провел на форуме: 36983
Репутация:
0
|
|
Щас попробую после отпишусь)
|
|
|

12.02.2009, 19:10
|
|
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
Провел на форуме: 791766
Репутация:
61
|
|
А точно по средствам PHP не получится написать такой таймер который я описывал?
Чтоб человек смог выйти со старице а таймер дошёл до нужной точки, выполнил запрос в Бд и затем запустился ещё 1 таймер который потом отправил ещё запрос...
Пример я нашёл в игре (Tribal Wars) http://voyna-plemyon.ru/
Там допустим отправляешь на вражескую деревню отряд...и он начинает идти до неё (таймер работает) затем отправляется запрос в БД (нападение само) и потом начинает идти 2 таймер(возвращение отряда)
sleep как я понел не будет работать если пользователь покинет страницы...+больная нагрузка на сервер
Крон каждую секунду...тоже нагрузка....
А как сделанно у них?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|