Msqli查询数组

时间:2016-03-04 01:14:06

标签: php loops variables

所以我有我的代码

    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&#34 ;;此代码确实运行我遇到的问题是我希望第一个函数在我的数据库中获取与$ userId相关联的所有ID,然后为每个Id运行第二个函数以从该查询中获取两个特定的信息。

1 个答案:

答案 0 :(得分:0)

在回应下面的评论时,这是我将使用的解决方案。 但是你应该警惕使用这种方法,因为它没有参数化值,因此没有消毒。

<?php

  function Keyquery($Apicall,$connection ){
    global $keyidcall, $keyid ,$Vcode;

    $string = "ID IN('";
    $string.= implode("','", $Apicall);
    $string.="')";

    $Keyidquery = mysqli_query($connection, "SELECT keyid, Vcode FROM `Characterapi` WHERE ".$string.";");
    $results = mysqli_fetch_object($Keyidquery);
    $keyid = $results->keyid;
    $Vcode = $results->Vcode;
}

?>