Перейти к контенту

Попытка создания Задачи (Task)


Рекомендуемые сообщения

не знаю где создавать тему т.ч. заранее сорри

 

Мне нужна фитча что бы спустя три дня после регистрации юзер мог создавать посты. Логично было бы делать изначально юзера неактивом и активация только админами (либо скрипт либо админ, логично). Я сдублировал один из файлов в ./source/task/ (что то ежедневное там было). Написал код (приведу его ниже), создал в АЦ задачу, заставил работать каждый день в 0:00, прописал имя файла с задачей, забил на форум на указанную дату - 3 дня. Возвращаюсь спустя 5 дней (ну не смог раньше) - нулевой результат! вот где косяк? в создании задачи или в коде?

 

это я сохранил увидев над ними коммент LEAVE ALONE:

function register_class(&$class)

function pass_task( $this_task )

 

отрезок кода function run_task():

function run_task()
{
//-----------------------------------------
// Main code here...
//-----------------------------------------

$this->ipsclass->DB->build_query(array( 'select' => '*', 'from' => 'members', 'where' => 'mgroup=1'));
$o = $this->ipsclass->DB->exec_query(); $k = 0; $ud = array(); $ud[] = array('id','joined');
while( $row = $this->ipsclass->DB->fetch_row($o) ){ $ud[$k]['id'] = $row['id']; $ud[$k]['joined'] = $row['joined']; $k++; }
if($k>0){
for($i=0; $i<count($ud); $i++){
	$ud[$i]['joined'] = $this->ipsclass->get_date( $ud[$i]['joined'], 'JOINED' );
	list($urd_day, $urd_month, $urd_year) = split('[/.]', $ud[$i]['joined']);
	$urd_day = (int)$urd_day;	$urd_month = (int)$urd_month;	$urd_year = (int)$urd_year;
	$cd_day = (int)date("j");	$cd_month = (int)date("m"); 	$cd_year = (int)date("Y");
	if($cd_year>$urd_year OR $cd_month>$urd_month OR ($cd_day>=($urd_day+3) AND $cd_month==$urd_month AND $cd_year==$urd_year)){
		$this->ipsclass->DB->simple_construct( array('update' => 'members', 'set' => 'mgroup=3', 'where' => 'id='.$ud[$i]['id']) );
		$this->ipsclass->DB->simple_exec();
	}
}
}

 //-----------------------------------------
 // Log to log table - modify but dont delete
 //-----------------------------------------

 $this->class->append_task_log( $this->task, 'Ежедневная активация новичков' );

 //-----------------------------------------
 // Unlock Task: DO NOT MODIFY!
 //-----------------------------------------

 $this->class->unlock_task( $this->task );
}

Ссылка на комментарий
Поделиться на других сайтах

$this->ipsclass->DB->query( 'UPDATE `forum`.`ibf_members` SET `mgroup` = 4 WHERE `id` = ' . $uid[$i] ); $this->ipsclass->DB->simple_exec();

есть мнение, ошибка

изучить DB->simple_update функцию

Ссылка на комментарий
Поделиться на других сайтах

Такое ощущение, что вы специально писали максимально неясный код..

 

Например, я не вижу, где определяется значние переменной $str, которая потом используется в

split ('[/.]', $str);

Изменено пользователем WildRAID
Ссылка на комментарий
Поделиться на других сайтах

я написал максимально понятно мне :D

 

Arhar: где эти функции хранятся?? я запарился их источники искать!

 

ps: правил код в первом посте опять. всё заработало - чувствительность к регистру имеется...

Изменено пользователем genresu4
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.