3 回答

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超21個(gè)贊
您不應(yīng)該嘗試通過操作字符串來創(chuàng)建 json,而是使用內(nèi)部json_encode方法。
$result = $conn->query($sql);
$response = [];
while ($row = $result->fetch()) {
$response[] = [
'idDepart' => $row->idDepart,
'idCircuit' => $row->idCircuit,
'dateDebut' => $row->dateDebut,
'nbPlaces' => $row->nbPlaces,
'prix' => $row->prix,
'titrePromotion' => $row->titrePromotion,
'rabais' => $row->rabais
];
}
echo json_encode($response);
像這樣,你 100% 肯定有:
如果您的輸入無法編碼,則出現(xiàn) PHP 錯(cuò)誤。
顯示有效的 json。
- - 編輯 - -
我看到你用法語編碼,注意特殊字符(如é à ...)。你應(yīng)該到處都有 UTF-8 編碼。
你的 php.ini
你的 PDO 連接
您的數(shù)據(jù)庫字符集、表和字段。
$dbHandle = new PDO("mysql:host=$dbHost;dbname=$dbName;charset=utf-8", $dbUser, $dbPass); $dbHandle->exec("SET CHARACTER SET utf8");

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
您可以嘗試將 php 腳本簡化為這個(gè)嗎?
<?php
if (!session_id()) {
@session_start();
}
header('Content-Type: application/json');
require 'controlleur/connexionDB.php';
$sql = "SELECT * FROM depart";
$result = $conn->query($sql);
$liste = array();
while($row = $result->fetch()){
$list[] = [
"idDepart" => $row->idDepart,
"idCircuit" => $row->idCircuit,
"dateDebut" => $row->dateDebut,
"nbPlaces" => $row->nbPlaces,
"prix" => $row->prix,
"titrePromotion" => $row->titrePromotion,
"rabais" => $row->rabais
];
}
echo json_encode($liste);
我使用json_encode()而不是手動(dòng)編寫字符串,我認(rèn)為這可以更好地避免拼寫錯(cuò)誤。

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超1個(gè)贊
確保您在 php 腳本上正確設(shè)置了標(biāo)題
<?php header('Content-Type: text/json');
- 3 回答
- 0 關(guān)注
- 253 瀏覽
添加回答
舉報(bào)