سلام ! :|
بعد از معرفی 2 تابع بریم یه کلاس معرفی کنیم .
کلاس WHM XML API که توسط آقای آرش همت نوشته شده . این کلاس 11 تا تابع داره که به بررسی آن ها خواهیم پرداخت ...
لینک : WHM XML API (CPanel API, change password, whm api, upgrade, accounts) - PHP Classes
فایل کلاس رو نیز پیوست کردم براتون ...
لیست توابع :
کد:
- version()- gethostname()
- listaccts ()
- listPkgs()
- createAccount($acctDomain,$acctUser,$acctPass,$acctPackg)
- accountsummary($accUser)
- passwd($accUser,$pass)
- suspend($acctUser,$reason)
- unsuspend($acctUser)
- terminate($acctUser,$keepDns=0)
- changepackage($accUser,$pkg)
فراخوانی فایل کلاس :
کد PHP:
require_once('whm.php');
شروع کلاس :
برای اتصال به سرور cPanel :
کد PHP:
$test->init('whmhost.com','whm_username','whm_hash');
تابع version
خوب از اسمش معلومه که ورژن cPanel رو خروجی میده .
مثال :
کد:
$version= $test->version();
echo $version;
تابع gethostname :
این تابع هاست نیم سرور رو خروجی میده .
مثال :
کد:
$gethostname= $test->gethostname();
echo $gethostname;
تابع listPkgs :
این تابع لیست پکیج هارو نمایش میده .
مثال :
کد PHP:
$listPkgs= $test->listPkgs();
تابع createAccount
مهمترین تابع این کلاس
با ارسال 4 متغیر اکانت رو میسازه .
- متغیر acctDomain : نام دومین اکانت بدون www
- متغیر acctUser : نام کاربری اکانت
- متغیر acctPass : رمز کاربری اکانت
- متغیر acctPackg : نام پکیج مورد نظر
تابع :
کد PHP:
$createAccount= $test->createAccount($acctDomain,$acctUser,$acctPass,$acctPackg);
مثال :
کد PHP:
$result=$test->createAccount('testdomain.com','testuser','testpassword123','package_test');
تابع accountsummary :
اینو تست نکردم ولی فکر کنم مشخصات یا فضای کاربر رو نشون میده .
- متغیر accUser : نام کاربری قربانی !
مثال :
کد PHP:
$accountsummary= $test->accountsummary($accUser);
تابع passwd :
رمز عبور اکانت رو تغییر میده . دو متغیر داره .
- متغیر accUser : نام کاربری !
- متغیر pass : رمز جدید که میخواید بذارید .
مثال :
کد PHP:
$passwd= $test->passwd($accUser,$pass);
تابع suspend :
ساسپند کردن اکانت x_X و 2 متغیر داره .
- متغیر acctUser
- متغیر reason
مثال :
کد PHP:
$suspend= $test->suspend($acctUser,$reason);
تابع unsuspend :
آن ساسپند کردن اکانت . یک فروند متغیر دارد !
- متغیر acctUser
مثال :
کد PHP:
$unsuspend= $test->unsuspend($acctUser);
تابع terminate :
ترمینیت کردن x_X :-SS ( از بیخ پاک کردن اکانت ) دو عدد متغیر .
- متغیر acctUser
- متغیر keepDns که بذارید روی 0 تا DNS هاش رو هم پاک کنه !
کد PHP:
$terminate = $test->terminate($acctUser,$keepDns=0);
تابع changepackage :
تغییر پکیج اکانت . دو متغیر داره .
- متغیر accUser
- متغیر pkg
مثال :
کد PHP:
$changepackage = $test->changepackage($accUser,$pkg);
یک مثال کلی که توی پیج کلاس بود :
کد:
<?php //include the whm class file.
require_once('whm.php');
// create a new instance of whm class
$test= new whm;
//initilize the whm object
//you can use you hostname or an IP below
//you can find you whm hash when yopu login into your whm account clickong on "Setup Remote Access Key" link.
$test->init('whmhost.com','whm_username','whm_hash');
//This will output the cpanel/whm version.
$version= $test->version();
echo "Cpanel/whm version is: $version <br>";
//This way you can create an account.
//This function will return a result set as an array in success and will return false on fail.
$result=$test->createAccount('testdomain.com','testuser','testpassword123','package_test');
//check if creating account was successfull or not.
if($result)
{
//print the result set
print_r($result);
}
else
{
//You can get the errors like this.
print_r($test->errors);
}
?>
خسته شدم دیگه 
امیدوارم تونسته باشم کمکی بهتون کرده باشم . با تشکر از همگی که وقتتون رو گذاشتید .
خدانگهدار / امیر