【发布时间】:2016-06-17 14:37:32
【问题描述】:
所以我有我的代码
function GetApi($connection,$UserId){
global $Apicall;
$Apicall = array();
$Apiidquery = mysqli_query($connection, "SELECT ID FROM ` Characterapi` WHERE UserId = '$UserId'");
while($results = mysqli_fetch_assoc($Apiidquery)){
$Apicall[] = $results['ID'];
}
}
如果我调用这个函数的输出 $Apicall[0] = 3 $Apicall[1] = 11 这就是我想要的信息。但现在我想使用像
这样的功能 function Keyquery($Apicall,$connection ){
global $keyidcall, $keyid ,$Vcode;
$Keyidquery = array();
$Keyidquery = mysqli_query($connection, "SELECT keyid, Vcode FROM `Characterapi` WHERE ID = '$Apicall'");
$results = mysqli_fetch_object($Keyidquery);
$keyid = $results->keyid;
$Vcode = $results->Vcode;
}
如果我设置 $Apicall ="3"; 则此代码会运行;我遇到的问题是我希望第一个函数在我的数据库中获取与 $userId 关联的所有 ID,然后为每个 Id 运行第二个函数以从该查询中获取两个特定的信息。
【问题讨论】:
-
循环
$Apicall并使用每个值调用Keyquery()?你不应该真的这样做,最好在一个查询中检索你想要的所有信息然后循环结果 - 即SELECT ... WHERE ID IN (" . implode(',', $Apicall) . ")