Есть файл graph.php
var weekday = new Array('Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб');
var table = $(".table-hover");
var result = [];
function validate(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode(key);
var regex = /[0-9]|\./;
if (!regex.test(key)) {
theEvent.returnValue = false;
if (theEvent.preventDefault) theEvent.preventDefault()
}
}
$("#gen").click(function() {
table.empty();
var rows = $("#rows").val() - 1;
var date = new Date($("#from").val());
for (var i = 0; i <= rows; i++) {
var day, month, year;
month = date.getMonth() + 1;
month = ('0' + month).slice(-2);
year = date.getFullYear();
day = date.getDate();
day = ('0' + day).slice(-2);
table.append("<tr><td>" + weekday[date.getDay()] + "</td><td>" + [day, month, year].join(",") + "</td><td><select></select></td><td><select></select></td><td><select></select></td></tr>");
date.setDate(date.getDate() + 1)
}
$("select").append('<option value="1">X</option><option value="2">Start up</option><option value="3">Base</option><option value="4">Advanced</option><option value="5">VIP</option>');
return date, rows
});
$("#save").click(function() {
$("select").each(function(indx) {
result[indx] = $(this).val()
});
$.ajax({
type: "POST",
url: "engine/ajax/graph-post.php",
data: {
vals: result
},
success: function() {
$('#save').css('color', 'lime');
}
});
});
<table class="table-fill">
<thead>
<tr>
<th colspan="2">График занятий</th>
<th>14-15:00</th>
<th>18-19:00</th>
<th>19-20:00</th>
</tr>
</thead>
<tbody class="table-hover">
</tbody>
</table>
<div id="result">
<span>Сколько дней выводим?</span>
<span>Дата начала</span>
<input id="rows" type="text" onkeypress="validate(event)" value="14" placeholder="Сколько дней выводим?">
<input id="from" type="date" value="2017-03-13" placeholder="Дата начала">
<input id="gen" type="button" value="Сгенерировать">
<input id="save" type="button" value="Сохранить">
</div>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
Который выводит и выполняет jQuery код генерации таблицы исходя из введенных данных. С помощью:
$.ajax({
type: "POST",
url: "engine/ajax/graph-post.php",
data: { vals : result },
success: function() {
$('#save').css('color','lime');
}
});
я отправляю сгенерированный массив result[] на обработку в файл graph-post.php , его содержимое:
$tdVars = $_REQUEST['vals'];
$json = file_get_contents('graph.json');
$json = json_decode($json, true);
$json[] = $tdVars;
$json = json_encode($json);
file_put_contents('graph.json', $json);
echo $json;
А этот файл в свою очередь должен вывести данные в другом месте. Но на сколько я понял, я все делаю неверно. Мне нужно либо третий файл создать который будет получать данные из graph.json и выводить в нужном месте. Либо еще в первом кодировать jQuery переменные в json строки и с помощью php сразу же записывать их в файл graph.json , а вторым файлом по выполнению, читать json файл и выводить. Помогите подобрать оптимальный метод, а то уже голова вскипает от этого кода. Да и еще по выводу json файла мне нужно обратно в jquery переменные вернуть массив.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Здравствуйте, подскажите способ сделать также?: http://refillsbourbon