Итак, я понимаю, как работает GetAsyn c, и на моем сервере есть сценарии, которые работают с тем, что я пытаюсь выполнить sh. Но с точки зрения получения данных на сервер вместо чтения с json, как бы я это сделал? На стороне сервера мой сценарий PHP, который получает все данные поста из отправленного JSON и проверяет базу данных со всей информацией, а если ее нет, он вставляет ее. (Это система запретов. Но я не уверен, правильно ли я настроил сторону роблокса или правильно ли настроен сервер. Вот мой код:
Это работает в Custom Adonis Admin System
SendWebBan = function(plr,UserID,Username,Agent,Comment)
local http = game:GetService("HttpService")
local Reason = "Banned in game by AAC Admin."
local url = "URL HERE/gamebanlistener.php"
local data = {
["UserID"] = UserID,
["Username"] = Username,
["Agent"] = Agent,
["Reason"] = Reason,
["Comment"] = Comment
}
local encode = http:JSONEncode(data)
local reponse,err = pcall(function()
http:PostAsync(url,encode)
end)
print(reponse)
if reponse == "false" then
Remote.MakeGui(plr,"Notification",{
Title = "Failed";
Message = "Ban Failed";
Duration = 10;
})
elseif reponse == "true" then
Remote.MakeGui(plr,"Notification",{
Title = "Success";
Message = "Ban Successful";
Duration = 10;
})
else
Remote.MakeGui(plr,"Notification",{
Title = "Failed";
Message = "Ban Failed";
Duration = 10;
})
end
end;
<?php
$ServerKey = "key here";
$APIKey = $_POST["key"];
$Data = json_decode($_POST['data']);
$UserID = $Data.UserID;
$Username = $Data.Username;
$Agent = $Data.Agent;
$Reason = $Data.Reason;
$Comment = $Data.Comment;
$Date = date("d/m/Y");
if($APIKey == $ServerKey){
//$conn = mysqli_connect($host,$dbuser,$dbpassword,$db);
$Connection = mysqli_connect(sql credentials here);
if($Connection->connect_errno)
{
echo('{"Status":"'. $Connection->connect_errno . '"}');
}else {
$BlacklResult = $Connection->query("SELECT * FROM bans"); //Blacklist is the name of my Bans database
if($BlacklResult->num_rows > 0)
{
while($Row = $BlacklResult->fetch_assoc()){
if($Row != null){
if($Row["UserID"] == $UserID){
echo 'Status:false';
return;
}else{
$Connection->query("INSERT INTO bans(UserID, Username, Agent, BanReason, BanComment,DateOfBan) VALUES(".$UserID.",".$Username.",".$Agent.",".$Reason.",".$Comment.",".$Date.");");
echo 'Status:true';
}
};
};
};
};
}else {
echo('{"Status":"API KEY"}');
};
?>