2013-02-25 134 views
0

我不知道爲什麼,但我得到一個有效的JSON解析錯誤(我檢查了jsonlint)。Jquery解析錯誤與有效Json

我從MySQL數據庫用PHP取數據並使其JSON字符串和它retrive到jquery的(見下面的代碼)

這是jquery的:

$.ajax({ 
    type: "GET", 
    url: "controller.php", 
    data: {action:"loadObjs"}, 
    dataType: "json", 
    contentType: "application/json; charset=utf-8", 
    async: true, 
    success: function(objs){ 
      //do stuff 
    }, 
    error:function (xhr, ajaxOptions, thrownError){ 
     document.write(ajaxOptions); 
     document.write(thrownError); 
     docmuent.write(xhr); 
    } 
} 

這是一個節Controller.php這樣的:

<?php 
if (isset($_GET['action'])){ 
$action = $_GET['action']; 

echo var_dump($action); 

if ($action == "altaObj") { 
    echo addObj(); 
} else if ($action == "bajaObj") { 
// delObj(); 
} else if ($action == "modObj") { 
// modObj(); 
} else if ($action == "loadObjs") { 
    echo loadObjs(); 
} else if ($action == "loadObjProps") { 

} 
} 

function loadObjs() { 
$objs = Obj::GetAll(); 
return json_encode($objs); 
} 


?> 

這是GETALL()中的OBJ類:

public static function getAll(){    
    $return = array(); 
    try{ 
      $sql = "SELECT objectId, name FROM objs"; 
      $result = db::executeQuery($sql); 
      while (false != ($r = mysql_fetch_object($result))) { 
       $foo = new Obj($r->objectId, $r->name); 
       //$foo->objectName = $r->objectName; 
       $return[] = $foo; 
      } 
      return $return; 
    }catch (Exception $e){ 
     return $e->getMessage(); 
    } 
} 

謝謝。

+0

你從哪裏得到錯誤? – 2013-02-25 15:39:18

+0

您可以顯示實際的JSON,尤其是它打破的行嗎?這可能比產生它的代碼更有啓發性 – 2013-02-25 15:39:37

+0

你能發佈一個PHP頁面的完整響應的例子嗎?只需打你的url /controller.php?action=loadObjs並告訴我們它返回的是什麼。 – 2013-02-25 15:40:03

回答

0

這是echo var_dump($ action);

謝謝x4rf41