Ich habe eine AJAX-Seitenanforderung, die eine PHP-Datei verwendet, um Abfragen an meine MySQL-Datenbank zu behandeln. Die PHP-Datei funktioniert gut, aber aus irgendeinem Grund ist es nicht nett zu mir. Hier ist, was ich habe:JSON-Objekt undefined
function updateForm(){
ID = $('#listings').val();
$.ajax({
type: "POST",
url: 'query.php',
data: "query=true" +
"&id=" + ID,
datatype: 'json',
success: function(data) {
alert(data);
updatePreview();
}
});
}
gibt mir ein Popup mit:
{"results":[{"ID":"12","area":"Hoboken","bedrooms":"5","fullbath":"3","halfbath":"1","remarks":"No remarks to speak of.","sqft":"2500","photos":null,"price":"1000","fee":null,"realtor":"Jane Doe","phone":"555-555-5555","address":"10th & Willow","bix":"1"}]}
aber sobald ich es ändern zu:
function updateForm(){
ID = $('#listings').val();
$.ajax({
type: "POST",
url: 'query.php',
data: "query=true" +
"&id=" + ID,
datatype: 'json',
success: function(data) {
alert(data.results);
updatePreview();
}
});
}
dem Popup gerade sagt nicht definiert.
Letztendlich möchte ich Informationen analysieren und meine Seite entsprechend aktualisieren, aber ich kann anscheinend nicht auf die Eigenschaften dieses JSON-Objekts zugreifen. Was ist los?
EDIT:
Hier ist der Code aus der PHP-Datei:
if (isset($_POST['query'])){
if (isset($_POST['id'])){
$query = 'SELECT * FROM bix WHERE ID=' . get_post('id');
$listing = mysql_query($query);
print_json($listing);
}
}
function print_json($var){
$output = array();
while($row = mysql_fetch_assoc($var)) {
$output["results"][] = $row;
}
echo json_encode($output);
}
function get_post($var)
{
return mysql_real_escape_string($_POST[$var]);
}
können Sie Ihren serverseitigen Code eingeben? –
auch wenn Sie console.log() beides, was bekommen Sie? –
vielleicht hast du das T in dataType nicht großgeschrieben ... – Timmerz