Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Skrypt dodający domeny
Forum PHP.pl > Forum > Przedszkole
dawstaw
Witam.
Potrzebuje stworzyc skrypt php dodający automatycznie domeny z listy do DirectAdmina.

W tym celu mam cos takiego:
CODE

set_time_limit(0);
function get_page ($url,$var,$proxy,$ref)
{
$ch = curl_init();
if(isset($proxy))
curl_setopt ($ch, CURLOPT_PROXY, $proxy);
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0");
curl_setopt ($ch, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE,"cookie.txt");
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_TIMEOUT, 400);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $var);
curl_setopt($ch, CURLOPT_REFERER, $ref);
$result = curl_exec ($ch);
curl_close($ch);
return $result;
}

$ip="[TUUTAJ WPISUJEMY IP NASZEGO SERWERA]";
$password="[HASŁO DO DA]";
$result=get_page ("http://".$ip.":2222/CMD_LOGIN","referer=%2FCMD_ADDITIONAL_DOMAINS%3F&username=[LOGIN DO DA]&password=".$password,"","http://".$ip.":2222/CMD_ADDITIONAL_DOMAINS?");
$bufer="";
$file=fopen("dom.txt","r");
while(!feof($file))
{
$bufer=fgets($file,100);
$bufer=ereg_replace("\n", "", $bufer);
$bufer=ereg_replace("\r", "", $bufer);
$result=get_page ("http://".$ip.":2222/CMD_DOMAIN","action=create&domain=". $bufer."&ubandwidth=unlimited&uquota=unlimited&cgi=ON&php=ON","","");
print $bufer." - ".$result;
}
fclose ($file);

?>



Do tego mam 2 pliki cache.txt i dom.txt w którym jest lista domen do dodania...

Teraz jednak pojawia sie problem. Skrypt dodaje np 10 domen ale z większą iloscią juz jest cięzej. Jak zrobic zeby kolejno dodawal domeny z listy ..Dodaje 1 domene z listy dodaje ją skrypt wybiera do dodaje 2 domene dodaje ja przez skrypt i tak az do 9999 domeny. Prosze o pomoc w przerobieniu tego tak aby skrypt ten byl dodac jak najwieksza ilosc domen do DA.

Pilnie prosze o pomoc i góry dziekuje wszystkiem którzy sie udzielą w temacie za pomoc...
pzdr
erix
Spróbuj dać przerwę na kilka sekund po np. 10 domenach (sleep).

Ew. dodawaj je seriami.
dawstaw
Cytat(erix @ 24.09.2009, 17:56:38 ) *
Ew. dodawaj je seriami.

Mozna dodawac seriami np po 10,15 domen jednak chce aby dodawało bez ingenercji czlowieka w liste domen. Tzn np daje liste 1000 domen i skrypt mi dodaje 1000 domen.

Czyli jak to ma wyglądać questionmark.gif

CODE

set_time_limit(0);
function get_page ($url,$var,$proxy,$ref)
{
$ch = curl_init();
if(isset($proxy))
curl_setopt ($ch, CURLOPT_PROXY, $proxy);
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0");
curl_setopt ($ch, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE,"cookie.txt");
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_TIMEOUT, 400);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $var);
curl_setopt($ch, CURLOPT_REFERER, $ref);
$result = curl_exec ($ch);
curl_close($ch);
return $result;
}

$ip="[TUUTAJ WPISUJEMY IP NASZEGO SERWERA]";
$password="[HASŁO DO DA]";
$result=get_page ("http://".$ip.":2222/CMD_LOGIN","referer=%2FCMD_ADDITIONAL_DOMAINS%3F&username=[LOGIN DO DA]&password=".$password,"","http://".$ip.":2222/CMD_ADDITIONAL_DOMAINS?");
$bufer="";
$file=fopen("dom.txt","r");
while(!feof($file))
{
$bufer=fgets($file,100);
$bufer=ereg_replace("\n", "", $bufer);
$bufer=ereg_replace("\r", "", $bufer);
$result=get_page ("http://".$ip.":2222/CMD_DOMAIN","action=create&domain=". $bufer."&ubandwidth=unlimited&uquota=unlimited&cgi=ON&php=ON","","");
print $bufer." - ".$result;
}
fclose ($file);

//// I TUTAJ DODAC SLEEP questionmark.gif ( NA KONCU ? TAK TO MA WYGLĄDAĆ?)

// current time
echo date('h:i:s') . "\n";

// sleep for 10 seconds
sleep(10);

// wake up !
echo date('h:i:s') . "\n";

?>


?>

cos chyba nie działa...Prosze o pomoc w poprawieniu..
erix
A po co ingerować? :]

Albo przez sleep robisz przerwę, albo zapisujesz linię w pliku i odczytujesz od ostatniego miejsca. Jak wykonasz - np. CRON, jakiś bot, możliwości jest sporo.
dawstaw
Odczytywanie od poprzedniego miejsca chyba bedzie najlepszą opcją...Przy pomocy opcji Sleep bedzie dosc dlugo dodawac chociac mi to w sumie nie przeszkadza..Zalezy mi na tym zeby skrypt wykonywal swoją prace bez ingernecji czlowieka..( np dodał 1000 domen do panelu)
Umiał by mi ktoś pomóc poprawic ten skrypt ? (moge zapłacic)

winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.