Ich finde ein seltsames Problem.AJAX Antwort, kann JSON String nicht ordnungsgemäß melden
Mit php ich eine Auswahl Abfrage auf MySQL-Datenbank ausführen, ich versuche, dies zu meinem Ajax Anruf, so dass ich für Schleife durch, aber ich immer undefined als eine Warnung, kann ich die gesamte JSON-Zeichenfolge jedoch können nicht Zielwerte.
Ajax-Code:
$.ajax({
type: "POST",
url: 'database_data.php',
data: {
action: 'ct',
input: input
},
success: function (data) {
var obj = JSON.parse(data);
alert(obj[0].pid);
alert(data[0].pid);
},error: function(request, status, error){
alert("Error: Could not delete");
}
});
PHP-Code:
$base= mysqli_connect($dbhost, $dbuser, $dbpass, $dbbase);
if ($_POST['action']== "ct"){
$input = $_POST['input'];
$return_arr = array();
$sql = "SELECT pid FROM programmes WHERE complete_title LIKE '%$input%' LIMIT 30";
if ($result = mysqli_query($base, $sql)){
while ($row = mysqli_fetch_assoc($result)) {
$row_array['pid'] = $row['pid'];
array_push($return_arr,$row_array);
}
}
mysqli_close($base);
echo json_encode($return_arr);
}
Daten Alerting gibt eine Antwort, wie so:
[{"pid":"p00547jm"},{"pid":"p0054880"},{"pid":"p005492h"},...
Wenn ich Daten zu alarmieren wählte [0], Daten [1] es druckt jedes individuelles Zeichen
'$ Schnipsel ({ datatype: "json", url: url, Daten: Daten, Erfolg: Erfolg });' hinzufügen datatype, oder verwenden Sie die Kurzschrift: http://api.jquery.com/jquery.getjson/ – ippi
Sie alarmieren 'data [0]', die nicht analysiert wird. – rishipuri
'obj' ist ein Array, also müssen Sie dort den richtigen Index verwenden:' obj [0] .pid' – CBroe