By
WhatIsHTML
Тривиальная задача, но не получается решить ее адекватно.
Хочу сделать одностраничный сайт, с контентом , который будет подгружаться с php.
Т.е. у меня будет несколько блоков в html, которые будут изменяться динамически. Данные я хочу брать из php, где они хранятся в массиве.
<div class="menu">
<a href="#">Home</a>
<a href="#">Product</a>
<a href="#">Customers</a>
</div>
<div id="content"></div>
Есть файл php с простым массивом, который возвращается в js
<?php
$arrayName = array('title' => 'Scheduling, CRM, and Invoicing Web Application - FieldPulse Software');
echo json_encode($arrayName);
?>
json_encode возвращает строку {"title":"Scheduling, CRM, and Invoicing Web Application - FieldPulse Software"}
Функция js, которая срабатывает после клика на ссылку.
function loadPage(url) {
$.ajax({
type: "POST",
url: "content.php",
data: 'page=' + url,
dataType: "html",
success: function(msg) {
if (parseInt(msg) != 0) {
msg = msg.substring(1, msg.length - 1); //удаляем символы { } в начале и конце строки
$array = msg.split(":"); // разбиваем строку на массив по символу ":"
$('title').html($array['title']); // новый title берем из массива, но в данном случае такой ячейки нет
alert(msg); //для наглядности, выводит {"title":"Scheduling, CRM, and Invoicing Web Application - FieldPulse Software"}
}
else {
alert ('file empty!');
}
}
});
}
В результате такого разбиения получаем обычный массив. Мне надо получить ассоциативный массив где будет ячейка с именем "title" и она будет содержать соотв. строку из пхп.
Как адекватно превратить результат выполнения функции json_encode в ассоциативный массив, чтобы можно было заменить необходимые поля в html?
Question
Anechka
Здравствуйте, как обратиться в foreach к массиву, название которого генерируется автоматически? Пробовала конкатенировать знак доллара с переменной в который точное название массива и потом уже на вход в foreach подавать эту переменную но так ничего не работает, как правильно? Спасибо!
Link to comment
Share on other sites
2 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.