Zdecydowałem się na napisanie funkcji dla panelu(cPanel). Może komuś się przyda:
<?php
//konfiguracja
define('CPANEL_HOST', 'adres_do_cpanleu.pl'); define('CPANEL_UZYTKOWNIK', 'login'); define('CPANEL_HASLO', 'haslo'); define('CPANEL_KOMPOZYCJA', 'x3polish'); //czy mają wyświetlać się szczegółowe błędy
function dodajKonto($nazwa, $haslo)
{
$post['email'] = $nazwa;
$post['domain'] = CPANEL_DOMENA;
$post['pass'] = $haslo;
$post['pass2'] = $haslo;
$post['password'] = $haslo;
$post['password2'] = $haslo;
$post['quota'] = CPANEL_POJEMNOSC;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://'.CPANEL_HOST.':'.CPANEL_PORT.'/frontend/'.CPANEL_KOMPOZYCJA.'/mail/doaddpop.html');
curl_setopt($ch, CURLOPT_USERPWD, CPANEL_UZYTKOWNIK.':'.CPANEL_HASLO);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURL_FAILONERROR, true);
$strona = curl_exec($ch);
if (curl_errno($ch))
{
$blad = 'Błąd tworzenia konata';
//szczegóły błędu
if(CPANEL_BLEDY==true)
$blad .=' [nr '.curl_errno($ch).'] ('.curl_error($ch).')';
throw new Exception($blad);
}
curl_close($ch);
{
$blad = 'Błąd tworzenia konata';
//szczegóły błędu
if(CPANEL_BLEDY==true)
$blad .='<br />'.$strona;
throw new Exception($blad);
}
}
?>