PHP массив не печатает вне цикла foreach - PullRequest
0 голосов
/ 28 марта 2020

Я работаю над этим сценарием. Основная функция - взять числа из базы данных с запятыми и использовать их внутри curl для отправки смс с api.

if(isset($_POST['getnumber']))

    {
        $matchid2 = $_POST['matchid2'];
        //connect db
        require_once __DIR__ . '/../db_connect.php';
        $db = new DB_CONNECT();
        $con = $db->connect();        
        $results = $con->query("SELECT DISTINCT ur.mobile FROM matchmst mst INNER JOIN matchdetail dtl on mst.matchid=dtl.matchid INNER JOIN user ur on ur.userid=dtl.userid WHERE mst.matchid = '$matchid2'");
        // look through query
        $datas = array();

        while($row = $results->fetch_assoc()){
                $datas[] = $row;                                
            }

        foreach ($datas as $data) {
            $mobiles = $data['mobile'].",";
        }

    }

Когда я попытался повторить это в html я получаю только одно значение из массива, т. е. 84 ******* 4, и пусто, но я хочу напечатать полную строку этих нуберов в html

<div class="form-group">
        <?php echo '<label for="msg">'.$mobiles.'</label>'; ?>

</div>

Так как я могу решить этот пелас помог. Заранее спасибо.

1 Ответ

1 голос
/ 28 марта 2020

Было бы проще построить строку во время чтения данных, чем манипулировать ею в большем количестве циклов ...

    $results = $con->query("SELECT DISTINCT ur.mobile FROM matchmst mst INNER JOIN matchdetail dtl on mst.matchid=dtl.matchid INNER JOIN user ur on ur.userid=dtl.userid WHERE mst.matchid = '$matchid2'");
    // look through query
    $mobiles = "";

    while($row = $results->fetch_assoc()){
            $mobiles .= $row['mobile'] . ",";                                
    }
    // Remove trailing , if needed
    $mobiles = substr($mobiles, 0, -1);

Вам также следует обратить внимание на использование подготовленных операторов для повышения безопасности вашего сайта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...