Also ich habe nicht wirklich viel geändert.
Habe 1. die Abfrage rausgenommen ob
$_POST['recaptcha_challenge_field']$_POST['recaptcha_response_field']
gesetzt sind und habe die
$resp = = recaptcha_check_answer ($privatekey, $_SERVER["REMOTE_ADDR"], $_POST["recaptcha_challenge_field"], $_POST["recaptcha_response_field"]);
zwischen
if(isset($_POST['name']) and isset($_POST['slots'])) {
und
if(!$resp->is_valid) { die( 'Das Captcha wurde nicht richtig gelöst! Bitte erneut versuchen! (Fehler: ' . $resp->error . ')<a href="createServer.php">Hier geht es zurück!</a>' ); }
eingefügt, resultat:
if(isset($_POST['name']) and isset($_POST['slots'])) { $resp = recaptcha_check_answer ($privatekey, $_SERVER["REMOTE_ADDR"], $_POST["recaptcha_challenge_field"], $_POST["recaptcha_response_field"]); if(!$resp->is_valid) { die( 'Das Captcha wurde nicht richtig gelöst! Bitte erneut versuchen! (Fehler: ' . $resp->error . ')<a href="createServer.php">Hier geht es zurück!</a>' ); }
somit versucht er auch nur das $resp-Objekt zu erzeugen, wenn das Script einmal abgesendet wurde.
Habe auch die Abbruch-Meldung bissl angepasst und mit die() cancel ich das Skript.
Desweiteren bin ich nochmal die createServer.php durchgegangen und habe (falls es Probleme gibt) noch folgendes angepasst:
else { if($_POST['slots']+$slotCount>512 || $serverCount>=10) die('alle Server vergeben!'); if($_POST['slots']>50) die('Wir vergeben nur 50 Slot Server!'); $tsAdmin = new ts3admin($ts3_ip, $ts3_queryport); $tsAdmin->connect(); $tsAdmin->login($ts3_user, $ts3_pass); $data = array( 'virtualserver_name' => $_POST['name'], 'virtualserver_maxclients' => $_POST['slots'], 'virtualserver_weblist_enabled' => '1', 'virtualserver_log_client' => '1', 'virtualserver_log_query' => '1', 'virtualserver_log_channel' => '1', 'virtualserver_log_permission' => '1', 'virtualserver_log_server' => '1', 'virtualserver_log_filetransfer' => '1', 'virtualserver_hostbanner_url' => '', 'virtualserver_hostbanner_gfx_url' => '', 'virtualserver_hostbutton_url' => '', 'virtualserver_hostbutton_gfx_url' => '', 'virtualserver_hostbutton_tooltip' => '', 'virtualserver_download_quota' => '-1', 'virtualserver_upload_quota' => '-1', 'virtualserver_max_download_total_bandwidth' => '-1', 'virtualserver_max_upload_total_bandwidth' => '-1', 'virtualserver_codec_encryption_mode' => 0, //0=einstellbar 1=aus 2=aus (opt_codec+1) ); $result = $tsAdmin->serverCreate($data);
geändert in
else
{
if($_POST['slots']+$slotCount>512 || $serverCount>=10) die('alle Server vergeben!');
if($_POST['slots']>50) die('Wir vergeben nur 50 Slot Server!');
if( !$tsAdmin->connect() ) {
$tsAdmin = new ts3admin($ts3_ip, $ts3_queryport);
$tsAdmin->connect();
$tsAdmin->login($ts3_user, $ts3_pass);
}
$data = array(
'virtualserver_name' => $_POST['name'],
'virtualserver_maxclients' => $_POST['slots'],
'virtualserver_weblist_enabled' => '1',
'virtualserver_log_client' => '1',
'virtualserver_log_query' => '1',
'virtualserver_log_channel' => '1',
'virtualserver_log_permission' => '1',
'virtualserver_log_server' => '1',
'virtualserver_log_filetransfer' => '1',
'virtualserver_hostbanner_url' => '',
'virtualserver_hostbanner_gfx_url' => '',
'virtualserver_hostbutton_url' => '',
'virtualserver_hostbutton_gfx_url' => '',
'virtualserver_hostbutton_tooltip' => '',
'virtualserver_download_quota' => '-1',
'virtualserver_upload_quota' => '-1',
'virtualserver_max_download_total_bandwidth' => '-1',
'virtualserver_max_upload_total_bandwidth' => '-1',
'virtualserver_codec_encryption_mode' => 0, //0=einstellbar 1=aus 2=aus (opt_codec+1)
);
$result = $tsAdmin->serverCreate($data);
Display More
Das Skript verbindet sich 2. mal mit dem Server ... eigentlich total unnütz die Abfrage nach der Else, aber ich hab sie drin gelassen und er soll sich nur noch mit dem Server erneut verbinden, wenn die Verbindung nimmer steht.
Probier das mal bitte aus und sag was passiert.
Mfg
PS: füge bitte auch wieder ein private und public key ein