آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

تغییر دستورات Curl به php

Cna  8 سال پیش  8 سال پیش
0 0

سلام؛ من موقع اجرای کران جاب های سایتم(3 کران جاب) به مشکل برخوردم. چون هاستم از این نوع کران جاب(curl) پشتیبانی نمیکنه. و به من گفتن:

امکان استفاده از دستور c-url و w-get در دستور کرون وجود ندارد، می بایست با استفاده از دستور php کرون خود را اجرا نمایید.

 <?php
require_once(dirname(__FILE__).'/../funkcje.inc.php');
require_once(dirname(__FILE__).'/../../../config.php');

$link = mysql_connect(XEON_DB_HOST, XEON_DB_USER, XEON_DB_PASS) or die(_OP_ERROR('IPN_PP: DB/CONNECT; FATAL ERROR!', __FILE__, __LINE__));
mysql_select_db(XEON_DB_DBNA);

function _OP_CRON_00_00_ERROR($error, $file, $line){

$body = "TIME: ".date('Y/m/d H:i:s');
$body .= "\nFILE: ".$file;
$body .= "\nLINE: ".$line;
$body .= "\nERROR: ".$error;

mail(config('email_support'), config('site_name').' ERROR: CRON RENTED', $body);
}

function _OP_AVG($time, $clicks){
$avg['time_1'] = mktime(0, 0, 0, date('m', time()), date('d', time()), date('Y', time()));
$avg['time_2'] = mktime(0, 0, 0, date('m', $time), date('d', $time), date('Y', $time));
$avg['time_3'] = $avg['time_1'] - $avg['time_2'];
$avg['days'] = floor( $avg['time_3'] / 86400 );

if($avg['days'] == 0 || $clicks == 0){
return number_format( 0 , 3 );
} else {
return number_format( ($clicks / $avg['days']), 3 );
}
}

ini_set("max_execution_time", -1);

$timeer = time()- 129600;

$Wait_SignUp = mysql_query("SELECT * FROM `xeon_ptsu_log` WHERE `approved` = 0 AND `date` <= '$timeer' ;") or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);
while($sings = mysql_fetch_assoc($Wait_SignUp)){
$ptsu_id = $sings['ptsu_id'];
$user = $sings['username'];
$id = $sings['id'];
$TIME = time(); // TIME
$ptsu_SQL = mysql_query("SELECT * FROM `xeon_ptsu` WHERE `id` = '$ptsu_id';");
$PTSU = mysql_fetch_assoc($ptsu_SQL);
$PTSU['cat']==0 ? $price=config('signup_st') : $price=config('signup_mini');
$title = $PTSU['title'];
mysql_query("UPDATE `xeon_users` SET `b_main` = `b_main` + '$price' WHERE `x_username` = '$user'");
mysql_query("UPDATE `xeon_ptsu_log` SET `approved` = 1 WHERE `id` = '{$id}'");
mysql_query("INSERT INTO `xeon_users_history` (`id`,`user`,`date`,`type`,`value`) VALUES (NULL,'$user','$TIME','22','$title');");
}

mysql_query("DELETE FROM `xeon_clicks` WHERE `day` != '".date("d")."';") or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);
mysql_query("UPDATE `xeon_users` SET `config_update_stats` = '1', `config_pm_limit` = '0';") or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);

mysql_query("UPDATE `xeon_users` SET `r_r_rent`='0' WHERE `x_username_2` NOT IN ( SELECT `user` FROM `xeon_users_rented` )" ) or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);

$QUERY_AVG_DIRECT_SQL = mysql_query("SELECT * FROM `xeon_users` WHERE `s_clicks` > 0;") or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);
while($d = mysql_fetch_assoc($QUERY_AVG_DIRECT_SQL)){
mysql_query("UPDATE `xeon_users` SET `s_avg` = '"._OP_AVG($d['x_register'], $d['s_clicks'])."' WHERE `xeon_users`.`id` = {$d['id']} LIMIT 1;") or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);
mysql_query("UPDATE `xeon_users` SET `s_clicks_referrals_direct_avg` = '"._OP_AVG($d['x_register'], $d['s_clicks_referrals_direct'])."' WHERE `xeon_users`.`id` = {$d['id']} LIMIT 1;") or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);
}

$QUERY_AVG_RENTED_SQL = mysql_query("SELECT * FROM `xeon_users_rented` WHERE `clicks` > 0;") or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);
while($r = mysql_fetch_assoc($QUERY_AVG_RENTED_SQL)){
mysql_query("UPDATE `xeon_users_rented` SET `avg` = '"._OP_AVG($r['since'], $r['clicks'])."' WHERE `xeon_users_rented`.`id` = {$r['id']} LIMIT 1;") or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);
}

$TABLES_OPTIMIZE = mysql_query("SHOW TABLES") or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);

while($table = mysql_fetch_assoc($TABLES_OPTIMIZE)){
foreach($table as $db => $tablename){
mysql_query("OPTIMIZE TABLE `$tablename`;") or _OP_CRON_00_00_ERROR(mysql_error(), __FILE__, __LINE__);
}
}

mysql_close($link);

echo 'CRON (00:00): OK';

?>
 <?php
ini_set("max_execution_time", -1);

require_once dirname(__FILE__) . '/../../../config.php';
require_once dirname(__FILE__) . '/../funkcje.inc.php';
require_once dirname(__FILE__) . '/../class.referrals.php';

$link = mysql_connect(XEON_DB_HOST, XEON_DB_USER, XEON_DB_PASS) or die( _OP_ERROR(mysql_error(), __FILE__, __LINE__ ) );
mysql_select_db(XEON_DB_DBNA) or die( _OP_ERROR(mysql_error(), __FILE__, __LINE__ ) );

$QUERY_EXPIRES_TIME = time();
$QUERY_EXPIRES_SQL = mysql_query("SELECT * FROM `xeon_users_rented` WHERE `expire` < '$QUERY_EXPIRES_TIME';") or die( _OP_ERROR(mysql_error(), __FILE__, __LINE__ ) );
$QUERY_EXPIRES_COUNTER = 0;

while($r = mysql_fetch_assoc($QUERY_EXPIRES_SQL)){

if($r['ur_lock'] == 1){

$_UPLINE_SQL = mysql_query("SELECT * FROM `xeon_users` WHERE `x_username` = '".$r['user_by']."' LIMIT 1;") or _OP_ERROR(mysql_error(), __FILE__, __LINE__);
$_UPLINE_DAT = mysql_fetch_assoc($_UPLINE_SQL);
$_UPLINE_DAT_ACCOUNT = explode(":", $_UPLINE_DAT['e_account']);
$_UPLINE_DAT_PRICES = _OP_PRICE_LIST($_UPLINE_DAT_ACCOUNT[0], $_UPLINE_DAT['s_referals_rented']);

$_RENEW_B_MAIN = ($_UPLINE_DAT['b_main'] >= $_UPLINE_DAT_PRICES['rent']) ? true : false;
$_RENEW_B_RENT = ($_UPLINE_DAT['b_rent'] >= $_UPLINE_DAT_PRICES['rent']) ? true : false;

if($_RENEW_B_MAIN == true || $_RENEW_B_RENT == true){

$_REFERRAL_CLASS = new referrals();
$_REFERRAL_CLASS->_paying($_UPLINE_DAT_PRICES, 30, $_UPLINE_DAT['x_username'], array($r['id']));

} else {

mysql_query("DELETE FROM `xeon_users_rented` WHERE `xeon_users_rented`.`id` = '{$r['id']}' LIMIT 1;") or _OP_ERROR(mysql_error(), __FILE__, __LINE__);
mysql_query("UPDATE `xeon_users` SET `r_r_rent` = '0' WHERE `x_username_2` = '{$r['user']}' LIMIT 1;") or _OP_ERROR(mysql_error(), __FILE__, __LINE__);
mysql_query("UPDATE `xeon_users` SET `s_referals_rented` = `s_referals_rented` - '1' WHERE `x_username` = '{$r['user_by']}' LIMIT 1;") or _OP_ERROR(mysql_error(), __FILE__, __LINE__);

$QUERY_SQL = mysql_query("SELECT * FROM `xeon_users` WHERE `x_username` = '{$r['user_by']}' LIMIT 1;") or _OP_ERROR(mysql_error(), __FILE__, __LINE__);
$QUERY_DAT = mysql_fetch_assoc($QUERY_SQL);
_OP_PROFIT_INSERT($QUERY_DAT['x_username'], $QUERY_DAT['id'], $QUERY_DAT['s_referals_direct'], $QUERY_DAT['s_referals_rented'], 's_removed_rented', 1, 1);

$QUERY_EXPIRES_COUNTER++;

}

} else {

mysql_query("DELETE FROM `xeon_users_rented` WHERE `xeon_users_rented`.`id` = '{$r['id']}' LIMIT 1;") or _OP_ERROR(mysql_error(), __FILE__, __LINE__);
mysql_query("UPDATE `xeon_users` SET `r_r_rent` = '0' WHERE `x_username_2` = '{$r['user']}' LIMIT 1;") or _OP_ERROR(mysql_error(), __FILE__, __LINE__);
mysql_query("UPDATE `xeon_users` SET `s_referals_rented` = `s_referals_rented` - '1' WHERE `x_username` = '{$r['user_by']}' LIMIT 1;") or _OP_ERROR(mysql_error(), __FILE__, __LINE__);

$QUERY_SQL = mysql_query("SELECT * FROM `xeon_users` WHERE `x_username` = '{$r['user_by']}' LIMIT 1;") or _OP_ERROR(mysql_error(), __FILE__, __LINE__);
$QUERY_DAT = mysql_fetch_assoc($QUERY_SQL);
_OP_PROFIT_INSERT($QUERY_DAT['x_username'], $QUERY_DAT['id'], $QUERY_DAT['s_referals_direct'], $QUERY_DAT['s_referals_rented'], 's_removed_rented', 1, 1);

$QUERY_EXPIRES_COUNTER++;

}
}

mysql_close($link);

?>
 <?php
require_once(dirname(__FILE__) . '/../../../config.php');
require_once(dirname(__FILE__) . '/../funkcje.inc.php');
require_once(dirname(__FILE__) . '/../class.phpmailer.php');
$link = mysql_connect(XEON_DB_HOST, XEON_DB_USER, XEON_DB_PASS);
mysql_select_db(XEON_DB_DBNA);

$minclick = explode(":", config('min_click'));
$PRICE_CLICK = explode(":",config('get_clicker'));
$PRICE_CLICK_REFF = explode(":",config('get_clicker_ref'));

ini_set("max_execution_time", -1);


if(!$link){
_OP_ERROR('/DB/EXIT/FALSE/;', __FILE__ , __LINE__);
}

function _OP_AUTOPAY_SYSTEM($user, $referral){

$query_user = mysql_query("SELECT * FROM `xeon_users` WHERE `x_username` = '$user' LIMIT 1;") or die( _OP_ERROR(mysql_error(), __FILE__ ,__LINE__) );
$query_user_data = mysql_fetch_assoc($query_user);
$query_user_data_account = explode(':', $query_user_data['e_account']);

$query_ref = mysql_query("SELECT * FROM `xeon_users_rented` WHERE `user` = '$referral' LIMIT 1;") or die( _OP_ERROR(mysql_error(), __FILE__ ,__LINE__) );
$query_ref_data = mysql_fetch_assoc($query_ref);

$_OP_PRICE = _OP_PRICE_LIST($query_user_data_account[0], $query_user_data['s_referals_rented']);

if(!$_OP_PRICE){
//_OP_ERROR('AUTOPAY', __FILE__ ,__LINE__);
return false;
}

if($query_user_data['b_rent'] >= $_OP_PRICE['autopay']){
$query_from = '`b_rent`';
} else if($query_user_data['b_main'] >= $_OP_PRICE['autopay']){
$query_from = '`b_main`';
} else {
//_OP_ERROR('AUTOPAY', __FILE__ ,__LINE__);
return false;
}

$expires = floor(($query_ref_data['expire'] - time()) / 86400);
$expires_border = 20;
if($query_user_data_account[0] == 4){
$expires_border = 10;
} else if($query_user_data_account[0] == 3){
$expires_border = 15;
} else {
$expires_border = 20;
}

if(
$expires >= $expires_border &&
$query_user_data['config_autopay'] == 'aON' &&
$query_ref_data['autopay_last'] != date('Y/m/d') &&
( _FC_GET('6', date('Y/m/d'), $query_user_data['x_username']) + $_OP_PRICE['autopay'] ) <= ($query_user_data['s_referals_rented']*$_OP_PRICE['autopay'])
){

mysql_query("UPDATE `xeon_users` SET $query_from = $query_from - '{$_OP_PRICE['autopay']}', `config_update_stats` = '1' WHERE `id` = {$query_user_data['id']} LIMIT 1;") or die( _OP_ERROR(mysql_error(), __FILE__ ,__LINE__) );
mysql_query("UPDATE `xeon_users_rented` SET `autopay_last` = '".date('Y/m/d')."', `expire` = `expire` + '86400' WHERE `id` = {$query_ref_data['id']} LIMIT 1;") or die( _OP_ERROR(mysql_error(), __FILE__ ,__LINE__) );
mysql_query("INSERT INTO `xeon_stats_clicks` (typ, user, data, value) VALUES ('6', '$user', '".date("Y/m/d")."', '{$_OP_PRICE['autopay']}') ON DUPLICATE KEY UPDATE value = value + '{$_OP_PRICE['autopay']}';") or die( _OP_ERROR(mysql_error(), __FILE__ ,__LINE__) );

_OP_PROFIT_INSERT($query_user_data['x_username'], $query_user_data['id'], $query_user_data['s_referals_direct'], $query_user_data['s_referals_rented'], 's_value_autopay', $_OP_PRICE['autopay'], $_OP_PRICE['autopay'], 's_value_autopay_active', 1, 1);

return true;

} else {
//_OP_ERROR('AUTOPAY', __FILE__ ,__LINE__);
return false;
}
}

# ****************************** #
# ********* XEONS WORK ********* #
# ****************************** #

$QUERY_XEON = mysql_query("SELECT * FROM `xeon_users_rented` ;") or die( _OP_ERROR(mysql_error(), __FILE__ ,__LINE__) );

while($row = mysql_fetch_assoc($QUERY_XEON)){
if( date("Y/m/d", $row['clicks_last']) == date("Y/m/d") && $row['con_invo'] == 0 && $row['expire'] > time() ){
_OP_AUTOPAY_SYSTEM($row['user_by'], $row['user']);
}
}

mysql_close($link);

?>
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
سجاد عباسی  8 سال پیش
+1 0

عجیب هست که اینو بستن من روی چند هاست اشتراکی هم تست کردم باز بوده به هر حال این راهی هست که به ذهنم میرسه با php کد رو اجرا کنید مثل این ها:

* * * * * php /local/root/path/to/tasks.php > /dev/null

یا

php -q /path/to/cron.php
/usr/bin/php -q /home/CpanelUsername/public_html/RootFolder/cronjob/fetch.php
cd /home/username/public_html/; php -q script.php
پاسخ به سوال 
Cna  8 سال پیش
0 0

استفاده از این اسکریپت کارساز ست؟

http://www.skinak.ir/codecanyon---web-cronjobs-v1-2.html


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .