şimdi bu adm_ts3ekle.php
<?php
function Adm_GetMachineListyatqa() {
// Check if the session variables are set
if(@$_SESSION["OGCP_UserName"] == "" || $_SESSION["OGCP_UserPass"] == "") {
echo "Session variables are missing or empty!";
return false;
}
global $__SYCPMYSQL;
// Ensure that the MySQL connection is properly initialized
if ($__SYCPMYSQL === null) {
$__SYCPMYSQL = new mysqli("localhost", "oyuncnmd_beyazcs", "xx..", "oyuncnmd_beyazcs");
if ($__SYCPMYSQL->connect_error) {
die("Connection failed: " . $__SYCPMYSQL->connect_error);
}
}
// Query the database
$sql_query = "SELECT * FROM beyazcs_machines WHERE 1";
$tickets = array();
$result = $__SYCPMYSQL->query($sql_query);
if (!$result) {
die("Error in query: " . $__SYCPMYSQL->error);
}
foreach ($result as $ticket) {
@$tickets[$ticket[0]] = $ticket;
}
// Return the tickets if found, otherwise false
if (count($tickets) > 0) {
return $tickets;
} else {
echo "No tickets found.";
return false;
}
}
?>
<?php
$machines = Adm_GetMachineListyatqa();
if(@$_GET["Islem"] == "Sil" && (int)@$_GET["ID"] != 0 && isset($machines[(int)@$_GET["ID"]])) {
$del_query = $__HCSGPMYSQL->prepare("DELETE FROM beyazcs_machines WHERE MachID=" . intval($_GET["ID"]));
$del_query->execute();
if($del_query->rowCount() > 0) {
unset($machines[(int)$_GET["ID"]]);
echo "Makine Silindi!";
} else {
echo "Makine Silinemedi!";
}
}
?>
<?php if($machines != false): foreach($machines as $machine): ?>
<?php
// Değişkenlerinizin sırasını değiştiriyoruz
$ts_usrname = "serveradmin"; // QUERY KULLANICISI
$ts_pass = $machine["MachPass"]; // QUERY ŞİFRESİ
$ts_host = $machine["MachIP"]; // Makine IP'si
$ts_qport = $machine["MachPort"]; // Makine Port'u
?>
<?php endforeach; else: ?>
<tr>
<td style="text-align:center" colspan="5">Makineniz bulunmamaktadır..</td>
</tr>
<?php endif; ?>
<?php
if(isset($_POST['ts3ekle'], $_POST['ts3name'], $_POST['ts3slot'], $_POST['ts3port'], $_POST['ts3sure'], $_POST['ts3ucret'], $_POST['kiralikmi'])) {
try {
require_once("tsv5/libraries/TeamSpeak3/TeamSpeak3.php");
$name = trim($_POST['ts3name']) == '' ? 'www.izmox.com - ' : trim($_POST['ts3name']);
$slots = (int)$_POST['ts3slot'] <= 0 ? 512 : (int)$_POST['ts3slot'];
$ts3_serv = TeamSpeak3::factory("serverquery://$ts_usrname:$ts_pass@$ts_host:$ts_qport/");
$date = strtotime($_POST['ts3sure']);
$ucret = (int)$_POST['ts3ucret'];
// servers tablosuna ekleme işlemi
$req = $__SYCPMYSQL->prepare("INSERT INTO servers(name, slots, port, panelUcret, panelSonSure, kiralik)
VALUES (:name, :slots, :port, $ucret, $date, :kiralik)");
$req->execute(array(
'name' => $ts_host.'_'.$_POST['ts3port'],
'slots' => $slots,
'port' => $_POST['ts3port'],
'kiralik' => $_POST['kiralikmi']
));
// Sunucu içinde kanalları oluşturma işlemi
$ts3_VirtualServer = $ts3_serv->serverGetByPort($_POST['ts3port']);
// Kanal oluşturma işlemleri buraya eklenir
echo 'Sunucu başarıyla oluşturuldu';
} catch(Exception $e) {
echo 'Hata: ' . $e->getMessage();
}
}
?>buda hizmetlerim.php
<?php
// Enable error reporting for debugging
error_reporting(E_ALL);
ini_set('display_errors', 1);
function Adm_GetMachineListyatqa() {
// Check if the session variables are set
if(@$_SESSION["OGCP_UserName"] == "" || $_SESSION["OGCP_UserPass"] == "") {
echo "Session variables are missing or empty!";
return false;
}
global $__SYCPMYSQL;
// Ensure that the MySQL connection is properly initialized
if ($__SYCPMYSQL === null) {
$__SYCPMYSQL = new mysqli("localhost", "oyuncnmd_beyazcs", "xx..", "oyuncnmd_beyazcs");
if ($__SYCPMYSQL->connect_error) {
die("Connection failed: " . $__SYCPMYSQL->connect_error);
}
}
// Query the database
$sql_query = "SELECT * FROM beyazcs_machines WHERE 1";
$tickets = array();
$result = $__SYCPMYSQL->query($sql_query);
if (!$result) {
die("Error in query: " . $__SYCPMYSQL->error);
}
foreach ($result as $ticket) {
$tickets[$ticket[0]] = $ticket;
}
// Return the tickets if found, otherwise false
if (count($tickets) > 0) {
return $tickets;
} else {
echo "No tickets found.";
return false;
}
}
?>
<?php
$machines = Adm_GetMachineListyatqa();
if(@$_GET["Islem"] == "Sil" && (int)@$_GET["ID"] != 0 && isset($machines[(int)@$_GET["ID"]])) {
$del_query = $__HCSGPMYSQL->prepare("DELETE FROM beyazcs_machines WHERE MachID=" . intval($_GET["ID"]));
$del_query->execute();
if($del_query->rowCount() > 0) {
unset($machines[(int)$_GET["ID"]]);
echo "Makine Silindi!";
} else {
echo "Makine Silinemedi!";
}
}
?>
<?php if($machines != false): foreach($machines as $machine): ?>
<?php
// Değişkenlerinizin sırasını değiştiriyoruz
$ts_usrname = "serveradmin"; // QUERY KULLANICISI
$ts_pass = $machine["MachPass"]; // QUERY ŞİFRESİ
$ts_host = $machine["MachIP"]; // Makine IP'si
$ts_qport = $machine["MachPort"]; // Makine Port'u
?>
<?php endforeach; else: ?>
<tr>
<td style="text-align:center" colspan="5">Makineniz bulunmamaktadır..</td>
</tr>
<?php endif; ?>
<?php
if(isset($_POST['ts3ekle'], $_POST['ts3name'], $_POST['ts3slot'], $_POST['ts3port'], $_POST['ts3sure'], $_POST['ts3ucret'], $_POST['kiralikmi'])) {
try {
$name = trim($_POST['ts3name']) == '' ? 'www.izmox.com - ' : trim($_POST['ts3name']);
$slots = (int)$_POST['ts3slot'] <= 0 ? 512 : (int)$_POST['ts3slot'];
$ts3_serv = TeamSpeak3::factory("serverquery://$ts_usrname:$ts_pass@$ts_host:$ts_qport/");
// Sunucu oluşturma işlemi
$ts3_serv->serverCreate(array(
"virtualserver_name" => $name,
"virtualserver_maxclients" => $slots,
"virtualserver_port" => $_POST['ts3port'],
'virtualserver_hostbanner_url' => 'http://izmox.com/',
'virtualserver_hostbanner_gfx_url' => 'http://izmox.com/ts3.gif'
));
$date = strtotime($_POST['ts3sure']);
$ucret = (int)$_POST['ts3ucret'];
// servers tablosuna ekleme işlemi
$req = $__SYCPMYSQL->prepare("INSERT INTO servers(name, slots, port, panelUcret, panelSonSure, kiralik)
VALUES (:name, :slots, :port, $ucret, $date, :kiralik)");
$req->execute(array(
'name' => $ts_host.'_'.$_POST['ts3port'],
'slots' => $slots,
'port' => $_POST['ts3port'],
'kiralik' => $_POST['kiralikmi']
));
// Sunucu içinde kanalları oluşturma işlemi
$ts3_VirtualServer = $ts3_serv->serverGetByPort($_POST['ts3port']);
// Kanal oluşturma işlemleri buraya eklenir
echo 'Sunucu başarıyla oluşturuldu';
} catch(Exception $e) {
echo 'Hata: ' . $e->getMessage();
}
}
?>
<?php
$ts_host = $machine["MachIP"];
$ts3array = array();
$sql_query = "Select * From servers where panelUserID = ".$_SESSION['OGCP_UserID'];
$sql_query = $__SYCPMYSQL->query($sql_query);
while($fetch = $sql_query->fetch(PDO::FETCH_ASSOC)) {
if( $sql_query->rowCount() > 0 ) {
$ts3array[$fetch['id']] = $fetch;
}
}
if(@$_GET["ID"] != "") {
if( isset($servers[(int)$_GET["ID"]]) && ( intval($servers[(int)$_GET["ID"]]["UserServerPriceTime"]) - time() > 0 ) ) {
$_SESSION["OGCP_SelectedServer"] = (int)$_GET["ID"];
$page->GoLocation($page->CreatePageLink('Anasayfa'));
} else {
echo('<div class="alert alert-danger"><button type="button" class="close" data-dismiss="alert">×</button><strong>Başarısız!</strong> Seçtiğiniz sunucunun süresi dolmuş..! </div>');
}
} elseif( isset($_GET['TS3ID']) ) {
if( is_numeric($_GET['TS3ID']) && isset($ts3array[$_GET['TS3ID']]) && ( intval($ts3array[(int)$_GET["TS3ID"]]["panelSonSure"]) - time() > 0 ) ) {
$_SESSION['auth'] = $ts3array[$_GET['TS3ID']];
$_SESSION['auth']['pseudo'] = $ts3array[$_GET['TS3ID']]['username'];
$page->GoLocation($page->CreatePageLink('TS3Log'));
} else {
echo('<div class="alert alert-danger"><button type="button" class="close" data-dismiss="alert">×</button><strong>Başarısız!</strong> Seçtiğiniz sunucunun süresi dolmuş..! </div>');
}
}
if( isset($_GET['Status']) && $_GET['Status'] == 'SunucuSec' ) {
echo('<div class="alert alert-info"><button type="button" class="close" data-dismiss="alert">×</button><strong>Erişim Başarısız!</strong> Sayfaya girebilmek için öncelikle bir hizmet seçmelisiniz! </div>');
}
?>
şimdi bu 2 kod beyazcs_machines e teamspeak3 yatqa bilgisi eklendiği zaman son eklenen yatqa bilgisine göre sunucu yönetiyor önceki eklenenlere yönete basınca sunucu kapalı demekte ben beyazcs_machines e eklenen her makine bilgisine göre yönetsin istiyorum yardımcı olurmusunuz ?