2017-05-08 40 views
1

我在PHP和MySQL中是全新的,但我需要爲明天做出快速項目。我不知道在哪裏可以找到我的問題的解決方案,因爲我對這種語言不夠了解。PHP - 來自MySQL數據庫的JSON響應

我會很高興,如果有人可以幫助我,找到爲什麼我的代碼後得到空白頁:

<?php 
$servername = "xyz.xyz"; 
$username = "123"; 
$password = "123"; 
$dbname = "123"; 

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

$sql = "SELECT `id`,`symbol`,`shortcut` FROM `Table`"; 
$result = $conn->query($sql); 

if ($result->num_rows > 0) { 
    // output data of each row 
    $currencyArray = array(); 

    while($row = $result->fetch_assoc()) { 
     $currency = array($row["id"], $row["symbol"], $row["shortcut"]); 
     $currencyArray[] = $currency; 
    } 

    print json_encode($currencyArray); 
} else { 
    echo "0 results"; 
} 
$conn->close(); 
?> 

我想顯示從JSON表中的所有數據與數組的數組,其中包含所有數據。現在我有空白頁面。我會很高興的幫助。

+0

您需要打開錯誤報告,所以你可以看到什麼不工作和錯誤的位置。 –

+0

不知道如何做到這一點不幸。如果我認爲正確:我嘗試打印'$ currency'並且它可以工作,但將此對象添加到'$ currencyArray'會因某種原因失敗。 – Dzeremix

+0

http://stackoverflow.com/questions/845021/how-to-get-useful-error-messages-in-php – Barmar

回答

1

嘗試在您的php設置中啓用error_reporting。 也許json_encode函數返回一個錯誤,並根據php doc返回false。這就是爲什麼你看到一個空白頁面。

您可以使用json_last_error函數來查看哪種錯誤是(doc)。

也許是一個編碼問題? json使用UTF-8編碼。嘗試調試您的代碼,因爲我們不會返回什麼樣的錯誤或知道您的數據是如何。

我建議你把一些標題,如果你打印出一個JSON字符串:

header("Content-type: application/json;charset=utf-8"); 
echo json_encode($array);