0
我使用datatables来创建从我的数据库信息的表格,但我的数据使用JSON/AJAX传递给表的数据表挣扎给我一个无效的JSON响应错误。json_encode输出JSON响应数据表无效?
什么,我做的是一个查询作为对象的结果,并将其编码为JSON的数据表中获取。我似乎被卡在获取它编码为JSON。
$sql = "SELECT * FROM BedrijfskledingT
INNER JOIN Bedrijfskleding ON BedrijfskledingT.KledingID = Bedrijfskleding.KledingID
INNER JOIN Gebruikers ON BedrijfskledingT.GebruikerID = Gebruikers.GebruikerID";
$stmt = sqlsrv_query($conn, $sql);
while($obj = sqlsrv_fetch_object($stmt)) {
var_dump($obj);
}
$json = json_encode($obj);
var_dump ($json);
无论我转储/ echo $ json或$ obj结果保持不变。我试图把json_encoder
的输出通过JSON Validator和它给了我下面的分析错误:
Error: Parse error on line 1:
object(stdClass) #1
^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', got 'undefined'
下面是$ JSON的输出。我把它缩小到了一行,因为它有很多。
object(stdClass) #1 (23) { ["GebruikerID"]= > int(17)["KledingID"] => string(5)
"KL001" ["Aantal"] => int(2)["Notitie"] => string(10)
"incl. Logo" ["Omschrijving"] => string(5)
"Broek" ["Artikelnr"] => string(14)
"12179-203-0918" ["Prijs"] => string(5)
"50.36" ["Gebruikersnaam"] => string(2)
"CD" ["Voornaam"] => string(4)
"Coen" ["Tussenvoegsel"] => NULL["Achternaam"] => string(10)
"*******" ["Woonplaats"] => NULL["Email"] => string(25)
"*****@*****.nl" ["Functienaam"] => string(14)
"Field Engineer" ["Bedrijf"] => string(6)
"Cruxin" ["Manager"] => NULL["Werkplek"] => NULL["IndienstTreding"] => string(10)
"1999-12-31" ["Beschrijving"] => NULL["CreatedBy"] => NULL["ModifiedBy"] => NULL["DateCreated"] => NULL["DateModified"] => NULL
}
我不正确使用json_encode
吗?将不胜感激帮助!
这里是我的DataTable的javascript:
$(document).ready(function() {
$('#example').DataTable({
"processing": true,
"serverSide": true,
"ajax": "server_processing.php"
});
});
而他while循环中有一个的var_dump了。 – bassxzero
@bassxzero我想,只是为了后来在他的脚本调试或东西。没有json_encode函数叫做:)。通常情况下,人们只需要一个json输出作为响应,而不是很多。但无论如何,如果这需要'JSON编码'他应该能够从答案中看到如何使用它:D – georoot
我试过你所建议的,并且返回的输出只是“空”。这是什么造成的?我无法将$ obj编码为JSON,因此它能让我空? – Brayn