问题描述
目前我正在制作一个创建帐户并挂起和取消挂起的模块,在我的_ConfigOptions中有一个下拉菜单,它必须在另一台服务器上获取mysql查询的值,该服务器已在模块中注册, _ConfigOptions我从默认的$ params数组中获取值,就像这样。
$serverip = $params["serverip"];
$serverusername = $params["serverusername"];
$serverpassword = $params["serverpassword"];
$serverport = $params["serverport"];
然后我可以进行查询并连接到外部服务器。我的问题是,当我想从_ConfigOptions函数获取$ params时,由于这里无法获取该变量,我的问题是是否可以通过创建另一个函数来进行该查询?我将把代码部分。
_ConfigOptions
function ModuleName_ConfigOptions()
{
$api = new \whmcsui\Api();
return array(
// a text field type allows for single line text input
'Package' => array(
'Type' => 'text','Size' => '25',),'Credits' => array(
'FriendlyName' => 'Amount of Credits','Type' => 'dropdown','Options' => "1,2,3,4,5,6,7,8,9,10,11,12",'dealer' => array(
'FriendlyName' => 'Choose Dealer:','Options' => $api->getResellers($params),// this is te function to call
),'comments' => array(
'Type' => 'text','Size' => '100','trialPackage' => array(
'FriendlyName' => 'Trial Package','Type' => 'radio','Options' => 'Yes,No','Description' => 'Is this trial package? (For \"Yes\" see the text box for entering trial period)',);
}
这是API调用查询结果的代码
public function getResellers($serverip,$serverusername,$serverpassword,$serverport){
$serverip = $params["serverip"];
$serverusername = $params["serverusername"];
$serverpassword = $params["serverpassword"];
$serverport = $params["serverport"];
$database='xtream_iptvpro';
$dealer=$reseller;
$host = $serverip.':'.$serverport;
$user = $username;
$passs = $password;
$connection=mysqli_connect($host,$serverpassword);
if (!$connection) { die('Not connected : ' .$host.'|'. $serverusername.'|'. $serverpassword );}
$db_selected = mysqli_select_db($connection,$database);
if (!$db_selected) {
die ('Can\'t use db : ' . mysqli_error($connection));
}
$query = "SELECT id,username FROM `reg_users`";
$result =mysqli_query($connection,$query);
$dbdata = array();
while ( $row = $result->fetch_assoc()) {
$dbdata[$row["id"]]=$row["username"];
}
return $dbdata;
}
结果是未连接:||。成为原因。数组$ params为空,请帮助
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)