>

로컬 데이터베이스에서 데이터를 가져 오려면 간단한 웹 서비스가 필요하지만 테스트 서버에서 실제 서버로 파일을 옮길 때 왼쪽 상단에 'null'이라는 빈 페이지가 나타납니다. 내 PHP 코드는 매우 간단합니다 :

<?php
// Include config
require_once 'config/db.php';
$sql = new db();
$conn = $sql->connect();
$task = isset($_GET['task']) ? mysql_real_escape_string($_GET['task']) :  "";
if(!empty($task))
{
    if($task === "totals")
    {
        $qur = mysql_query("working query - no problem here;");
        $result =array();
        while($r = mysql_fetch_array($qur))
        {
            extract($r);
            $result[] = array("total_value" => $total_value, 'orders_date' => $orders_date, 'number_of_orders' => $number_of_orders); 
        }
        $json = $result;
    }
}
@mysql_close($conn);
/* Output header */
header('Content-type: application/json');
echo json_encode($json, JSON_PRETTY_PRINT);
?>

그리고 여기 db.php 코드가 있습니다 :

<?php
class db
{
    // Properties
    private $dbhost = 'ip-address';
    private $dbuser = 'xxx';
    private $dbpass = 'yyy';
    private $dbname = 'zzz';
    // Connect
    public function connect()
    {
        $conn = mysql_connect($this->dbhost, $this->dbuser, $this->dbpass);
        mysql_select_db($this->dbname, $conn);
    }
}
?>

  • 답변 # 1

    Json_encode가 정답을주지 않을 수도 있습니다.

    1) 또한 JSON_PRETTY_PRINT 를 확인하십시오  PHP 버전>= 5.4에서만 사용할 수 있습니다. 그것의 값이 너무 128 JSON_PRETTY_PRINT 교체하려고 128.

    디버그 할 페이지 상단의 오류보고 만

    2) 또한 한 번 $json 를 인쇄 해보십시오  인코딩하기 전에

    3) 의견에서 언급했듯이 실제로 데이터를 가져올 때만 인코딩하십시오

    !empty($json){
    header('Content-type: application/json');
    echo json_encode($json, JSON_PRETTY_PRINT);
    }
    
    

  • 이전 python - 데이터 프레임에서 고유 키 가져 오기
  • 다음 자바 스크립트는 두 날짜를 비교하여 차이를 얻습니다