когда я повторяю свой php-массив, он отображается так
эхо json_encode ($ marray);
ОТОБРАЖЕНИЕ
{"marray":[{"широта":"12,34","длина":"76,35"},{"широта":"13,60","длина":"77,34"},{"широта":"14,45" ,"длинный":"78,70"},{"широта":"12,12","длинный":"79,47"}]}
я проверил свою json_string (выше) в онлайн-форматере json... в ней нет ошибок.
я использую ajax для получения строки json в этой переменной — xmlhttp.responseText;
если я напечатаю эту переменную, она отобразит тот же наш вывод, что и в инструкции php echo;
но если я скопирую и вставлю приведенную выше строку json напрямую (без использования ответа ajax) в переменную javascript, она отобразится
[объект Объект],[объект Объект],[объект Объект],[объект Объект]
тогда я могу использовать оператор точки для извлечения данных из него.....
я не знаю, в чем проблема, когда строка json сохраняется в переменной js в качестве ответа из файла php.
есть много тем, касающихся этого, но я все еще не могу понять свою проблему .... JSON.parse() nad eval() не работает для меня.
МОЕ PHP-кодирование...
$sql="SELECT * FROM $tbl_name";
$result=mysql_query($sql);
$length=mysql_num_rows($result);
while($row=mysql_fetch_array($result))
{
$marray[$i] =
array(
"lat" => $row['lat'],
"long" => $row['long']
);
$i++;
}
$dmarray=array("marray"=>$marray);
echo json_encode($dmarray);
пожалуйста, помогите мне... проблема кажется глупой, но она стоила мне 3 полных дня бессонных ночей
<script type="text/javascript">
function displayvalue()
{
m="xxx";
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
var h=xmlhttp.responseText;
document.getElementById("data").innerHTML="h";
}
}
xmlhttp.open("GET","array.php?q="+m,true);
xmlhttp.send(null);
}
</script>
document.getElementById("data").innerHTML="h";
должно бытьdocument.getElementById("data").innerHTML=h;
. - person Barmar   schedule 16.08.2012