Итак, у меня есть код
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 запускал вторую функцию, чтобы получить две конкретные части информации из этого запроса.
В ответ на комментарий ниже, это решение, которое я бы использовал. Однако вы должны быть осторожны с использованием этого метода, поскольку он не параметризует значения и как таковые не подвергается дезинфекции.
<?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; } ?>