채택완료

db에서 받은 데이터를 json으로..

db에서 데이터를 json으로 가져올때 어떻게 해야하나요?;

$db    = new PDO('mysql:host=localhost;dbname=dbname;charset=utf8', 'username', 'userpassword');

$start = $_REQUEST['from'] / 1000;

$end   = $_REQUEST['to'] / 1000;

$sql   = sprintf('SELECT * FROM testdate WHERE `datetime` BETWEEN %s and %s',

    $db->quote(date('Y-m-d', $start)), $db->quote(date('Y-m-d', $end)));

$out = array();

foreach($db->query($sql) as $row) {

    $out[] = array(

        'id' => $row->id,

        'title' => $row->name,

        'url' => Helper::url($row->id),

        'start' => strtotime($row->datetime) . '000',

        'end' => strtotime($row->datetime_end) .'000'

    );

}

echo json_encode(array('success' => 1, 'result' => $out));

exit; 

이거..맞나요?;

|

답변 1개 / 댓글 2개

채택된 답변
+20 포인트
2014-12-10 (수) 10:12:45
echo json_encode(
array
( array( 'id' => 111, 'title' => "Event1", 'start' => "$year-$month-10", 'url' => "http://yahoo.com/" ), array( 'id' => 222, 'title' => "Event2", 'start' => "$year-$month-20", 'end' => "$year-$month-22", 'url' => "http://yahoo.com/" ) ));

답변에 대한 댓글 2개

어떤건지..설명좀 부탁드려요;;초보자라 잘 몰라서요..
그리고 형태는 아는데요..DB에 있는 데이터를 저렇게 가져올 수 없지 않나요??
반복문도 없고;;
json_encode에 배열로 넣으시면 위와같은 형태가 됩니다

답변을 작성하려면 로그인이 필요합니다.