Я пытаюсь извлечь данные из базы данных mysql, чтобы создать json-файл для использования с временной шкалой timelinejs. Проблема в том, что файл json должен быть отформатирован определенным образом. Я создал следующий код, который правильно форматирует json, но он вытаскивает только одну запись из моей базы данных (в частности, последнюю запись). Любая помощь, которую вы могли бы предложить, была бы очень признательна!потянув данные mysql для timelinejs?
<?php
$link = mysql_pconnect("localhost", "root", "********") or die("Could not connect");
mysql_select_db("php_test") or die("Could not select database");
$rs = mysql_query("SELECT * FROM timelinetest");
while($row = mysql_fetch_array($rs, MYSQL_ASSOC))
$object = array
('timeline'=>
array(
'headline'=>'Georgia History Title Page',
'type'=>'default',
'text'=> 'Testing Overview',
'startDate'=>'1700',
'asset'=>array('media'=>'titlepagemedia', 'credit'=>'titlepagecredit', 'caption'=>'titlepagecaption'),
'date'=>array(array('startDate'=>($row['startDate']), 'endDate'=>($row['endDate']), 'headline'=>($row[ 'headline']), 'text'=>($row['text']), 'tag'=>'', 'asset'=>array('media'=>($row['media']), 'credit'=>($row[ 'credit']), 'caption'=>($row['caption']))),),
'era'=>array(array('startDate'=>'', 'endDate'=>'', 'headline'=>'', 'text'=>'', 'tag'=>''))
)
);
$json = json_encode($object);
file_put_contents("testing.json", $json);
?>
<head>
<!-- jQuery -->
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<!-- BEGIN TimelineJS -->
<script type="text/javascript" src="http://cdn.knightlab.com/libs/timeline/latest/js/storyjs-embed.js"></script>
<script>
$(document).ready(function() {
createStoryJS({
type: 'timeline',
width: '800',
height: '600',
source: 'http://localhost/php_test/timeline_test/testing.json',
embed_id: 'my-timeline'
});
});
</script>
<!-- END TimelineJS -->
Благодарим за быстрый ответ! Проблема с этим решением заключается в том, что он повторяет титульную страницу (первый массив), и это предотвращает загрузку временной шкалы. Мне нужно, чтобы массив заголовков был статичным, а затем массивом даты, ресурса и эры в цикле. Я просто не могу понять. – Ambrose
Я все еще узнаю о вашем объекте TimeLine. Это означает, что 'date'-array может быть структурой, которая должна быть заполнена в вашем цикле. Существует «актив» внутри, bzt 'era' определенно находится на том же уровне, что и ваш заголовок, и не может быть закодирован. Я отредактирую свой пост ... – cars10m
Это сработало! Я очень ценю это. Я застрял на этом несколько дней. Я относительно новичок в этом виде кода, и я не понимал, что массив можно разделить так. Итак, последний вопрос. Позже, я хочу, чтобы иметь возможность отображать только определенные даты из базы данных. Могу ли я использовать 'where' и' between' для этого? – Ambrose