شاید یه وقت شما تو یه شرایطی قرار بگیرید که خارج از کنترل شما باشه و شما شرمنده برخی کاربرانتون بشید؛
خوب ما هم به دلیل برخی از این مشکلات و بد شانسی که ممکن بود 1 در 1000000000000000 اتفاق بی افته و افتاد که باعث دان تایم هایی شد.
برای جبران بخشی از این دان تایم ها ( که خارج از دسترس ما بود و دیتا سنتر توانست آن را مرتفع کند) تصمیم گرفتیم به روز های دوره کاربران اضافه کنیم؛ مثلا برای همه کاربران 15 روز سرویس رایگان محاسبه شود.
متاسفانه هیچ روش و پلاگین خاصی برای این کار پیدا نکردم؛ مجبور شدم دو خط کد PHP بنویسم؛ گفتم شاید به درد کسه دیگه ای بخوره؛
کد PHP:
<?php
//M@soud
include('configuration.php');
$con= mysql_connect($db_host, $db_username, $db_password) or die("Database connection [e1]");
mysql_select_db($db_name, $con) or die("Database Not Found [e2]");
$query="SELECT * FROM tblhosting where domainstatus='Active'";
$select=mysql_query($query);
$num_rows=mysql_num_rows($select);
for($i2=0; $i2<$num_rows; $i2++)
if($row=mysql_fetch_array($select)){
$id=$row['id'];
$nextduedate=$row['nextduedate'];
$nextinvoicedate=$row['nextinvoicedate'];
$n_nextduedate=date('Y-m-d', strtotime($nextduedate. ' + 15 day'));
$n_nextinvoicedate=date('Y-m-d', strtotime($nextinvoicedate. ' + 15 day'));
$sql="UPDATE tblhosting set nextduedate='$n_nextduedate', nextinvoicedate ='$n_nextinvoicedate' where id='$id' limit 1";
if (!mysql_query($sql)) {
echo'ID->'.$id.' | Error in Update';
}
else{
echo'ID->'.$id.' | Old Date->'.$nextduedate.' | New Date->'.$n_nextduedate.' -> Updated.<br>';
}
}
?>
توجه؛ این اسکریپت فایل configuration.php مربوط به WHMCS را اینکلود میکنه پس فایل باید در روت باشد و اگر مسیر این فایل کانفیگ را تغییر دادید این اسکریپت هم در همان فولدر اجرا کنید.
این تغییر طول زمان دوره مربوط به دامین و اس اس ال نمی باشد.
نام تیبل پیشفرض tblhosting می باشد که اگر تغییر دادید در اسکریپت اعمال کنید.
15 day به طول دوره اضافه می ود که در کد بالا دو بار مشاهده می کند؛ هر دو را تغییر دهید به تعداد روز های مورد نظرتان.