2016-12-31 125 views
0

您好,我是Android新手。我的问题是我的json值:显示数组位置的json数组

<?php 

include 'dbconfig.php'; 
// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 

// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

$sql = "SELECT * FROM textviewtable"; 
$result = $conn->query($sql); 

if ($result->num_rows > 0) { 
    // output data of each row 
    while($row[] = $result->fetch_assoc()) 
    { 
    $json = json_encode($row); 
    } 
} 
else { 
echo "0 results"; 
} 

echo $json; 

$conn->close(); 
?> 

JSON

[ { “ID”: “8”, “ServerData”: “ABC”, “名”: “XYZ” ,“pincode”:“123456”} {“id”:“9”,“ServerData”:“DEF”,“name”:“JHG”,“pincode”:“654321”}, {“id” :“10”,“ServerData”:“GHI”,“名称”:“KIH”,“pincode”:“142536”} ]

JSON的ServerDatanamepincode对象是各行上相同的,但我需要每一行的ServerDatanamepincode有所不同。

所以,第一行我想告诉ServerDatanamepincode和第二行我想告诉ServerData1name1pincode1等我怎样才能做到这一点?

回答

0

它只显示一行的原因是因为在每个循环中,您只是重新定义了$json变量。你需要将每一行存储在一个数组中,并使用echo。

试着改变你的代码:

<?php 

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

$sql = "SELECT * FROM textviewtable"; 
$result = $conn->query($sql); 

if ($result->num_rows > 0) { 

    $data = []; 

    //output data of each row 

    while ($row = $result->fetch_assoc()) { 
     $data[] = $row; 
    } 

    echo json_encode($data); 

} else { 
    echo "0 results"; 
} 

$conn->close(); 

希望这有助于!

+0

不工作,相同的outpoint打印 – mohit