簡體   English   中英

將多行MySQL數據庫返回到iOS App

[英]Return multiple rows of MySQL database into iOS App

我正在嘗試編寫一個腳本,該腳本將接收返回的結果,將它們編譯為單個數組,並將其回顯到我的iOS應用程序。 本質上,我需要輸出看起來像這樣:

array[0]=dictionary
array[1]=dictionary
array[2]=dictionary

我遇到的問題是echo命令顯然不能在while循環中,因此我想知道如何編譯while循環中返回的所有內容,然后再回顯它們。

這是我當前的代碼,沒有我無法弄清楚的while循環的內容。

<?php
require_once ('config.inc.php'); 
require_once (MYSQL);


// Trim all the incoming data:
$trimmed = array_map('trim', $_POST);

// Assume invalid values:
$id = FALSE;


// Check for an email address:

if ($trimmed['user_id']) {
    $id = mysqli_real_escape_string ($dbc, $trimmed['user_id']);
} else {
    echo "Error. No User ID submitted.";
}


if ($id) { // If everything's OK...

    $q = "SELECT * FROM post LEFT JOIN users ON post.user_id = users.id WHERE users.id='$id'";
    $r = mysqli_query ($dbc, $q) or trigger_error("Query: $q\n<br />MySQL Error: " . mysqli_error($dbc));

    while(mysqli_fetch_array($r,MYSQLI_ASSOC)){

    /*
    CODE TO COMPILE THE MULTIPLE ROWS HERE
    */

    }
} 

echo json_encode($multiple_row_result);

mysqli_close($dbc);

?>

在此先感謝您提供的所有幫助!

如果您想要的只是一個JSON對象,應該相對容易些

$multiple_row_result = array();
if ($id) { // If everything's OK...
    $q = "SELECT * FROM post LEFT JOIN users ON post.user_id = users.id WHERE users.id='$id'";
    $r = mysqli_query ($dbc, $q) or trigger_error("Query: $q\n<br />MySQL Error: " . mysqli_error($dbc));

    while($row = $r->fetch_assoc()){
         $multiple_row_result[] = $row;
    }
} 

echo json_encode($multiple_row_result);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM