Я пытаюсь получить данные из базы данных на основе имени, введенного пользователем, все работает нормально. Я вижу значение на экране и без ошибок. Вот код php:
<?php $dbhost = "localhost"; $username = "root"; $password = ""; mysql_connect($dbhost,$username,$password); @mysql_select_db("trynew") or die(mysql_error()); $user ="mon"; $query = "SELECT * FROM trynewtable where name = '$user' "; $all_result = array(); $result = mysql_query($query); if($result==FALSE) { die(mysql_error()); } while($row = mysql_fetch_assoc($result)) { $all_result[] = $row; } header('Content-Type: application/json'); $jsondata = json_encode($all_result);echo $jsondata; mysql_close(); ?>
Код JavaScript:
var loadingFunc=function() { var xhr; if(window.XMLHttpRequest) { xhr = new XMLHttpRequest(); } else { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } var jsonData= ""; xhr.onreadystatechange =function() { if(xhr.readyState==4) { if(xhr.success =200) { jsonData = xhr.responseText; document.getElementById("dvID").innerHTML = jsonData; //var parsejson = JSON.parse(jsonData); //document.getElementById("dvIDO").innerHTML = parsejson.age; document.getElementById("dvIDO").innerHTML = jsonData[0].age; } else { document.getElementIdById("dvID").innerHTML = "it's not success "; } } else { console.log("error is here"); console.log(xhr.readyState); } } var element1 = document.getElementById("dvID") ; xhr.open("POST","index.php"); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); var sendD = document.getElementById("data_found").value; var data = "data_found=" + sendD; var element = document.getElementById("btn") ; if(element) { element.addEventListener('click',function(){ console.log("just clicked") xhr.send(data); }) } }; window.onload = loadingFunc();
но вывод, который я вижу в html div, следующий:
[{ "ID": "1", "Имя": "ПН", "Возраст": "26", "Пол": "F"}]
не определено
Я получаю весь объект, но всякий раз, когда я пытаюсь получить любое свойство объекта, например age здесь (parsejson.age или jsonData [0] .age), он показывается неопределенным, может ли кто-нибудь помочь мне, как мне получить любое свойство объекта ?
Пожалуйста, дайте мне знать, что я делаю неправильно?
Сначала преобразуйте ответ cleartext в объект javascript. У вас уже есть линия, но, похоже, это выглядит так:
alert(jsonData["Age"]); //Age alert(jsonData.Age); //Age