【问题标题】:json - while loop out with commasjson - while 用逗号循环
【发布时间】:2016-05-22 15:02:08
【问题描述】:

问题已解决。谢谢大家。

代码:

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT * FROM movie WHERE status = 'In Cinemas' LIMIT 6";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {

$moviename = $row['moviename'];
$cover = $row['poster'];

header('Content-Type: application/json; charset=utf-8');

$alldata [] = array('key'=>'movie-name', 'value'=>$moviename,'cover' =>$cover);
echo json_encode($alldata);

}}
else{

echo "does not work";
}

结果:

    { "items": 
[ 

{"key":"movie-name","value":"test","cover":"upload/movies/poster/1.png"}

{"key":"movie-name","value":"London","cover":"upload/movies/poster/2.png"}

]}

问题:

json的两个输出没有逗号分隔,以{“key”开头-括号前应该是逗号,请帮忙实现

问题已解决。谢谢大家。

【问题讨论】:

  • 我无法理解您要说的问题是......
  • 顺便说一句,您的headerjson_encode 行不应该在while 循环之外吗?
  • 我试图让输出在它们之间有“逗号 - , 符号”。
  • 如果问题得到解决,请将解决方案添加为答案,或者如果您愿意,请添加到问题中以便其他人可以看到?
  • 已答复,谢谢。

标签: php sql json output


【解决方案1】:
$sql = "SELECT * FROM movie WHERE status = 'In Cinemas' LIMIT 6";
$result = $conn->query($sql);
$master_array = array();

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
$moviename = $row['moviename']; 
$poster = $row['poster'];

$master_array[] = array('key'=>'movie-name','value'=>$moviename,'cover'=>$poster);

}
header('Content-Type: application/json; charset=utf-8');
    echo json_encode($master_array);

}
else{

echo "no";
}

【讨论】:

    猜你喜欢
    • 2021-11-24
    • 2018-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-27
    • 1970-01-01
    • 2011-03-23
    相关资源
    最近更新 更多