Получить JSON-данные из PHP с помощью JavaScript

1

Я новичок в json. Я получаю данные из php-кода в формате json.

[
    {
        "Title": "New Event",
        "TYPE": "info",
        "StartsAt": "16 November 201512:00",
        "EndsAt": "25 November 201512:00"
    },
    {
        "Title": "Party",
        "TYPE": "warning",
        "StartsAt": "25 November 2015 09:30",
        "EndsAt": "25 November 2015 5:30"
    },

]

У меня есть javascript файл demo.js

Я хочу получить эти данные в js файле, в настоящее время данные жестко запрограммированы. Я хочу показать события, которые я получаю из db.

vm.calendarView = 'month';
vm.calendarDay = new Date();

 vm.events = [
  {
    title: 'An event',
    type: 'warning',
    //startsAt: moment().startOf('week').subtract(2, 'days').add(8, 'hours').toDate(),
    //endsAt: moment().startOf('week').add(1, 'week').add(9, 'hours').toDate(),
    startsAt:new Date(2015,10,1,1),
    endsAt:new Date(2013,5,1,1),
    draggable: true,
    resizable: true
  }, {
    title: '<i class="glyphicon glyphicon-asterisk"></i> <span class="text-primary">Another event</span>, with a <i>html</i> title',
    type: 'info',
    startsAt: moment().subtract(1, 'day').toDate(),
    endsAt: moment().add(5, 'days').toDate(),
    draggable: true,
    resizable: true
  }, {
    title: 'This is a really long event title that occurs on every year',
    type: 'important',
    startsAt: moment().startOf('day').add(7, 'hours').toDate(),
    endsAt: moment().startOf('day').add(19, 'hours').toDate(),
    recursOn: 'year',
    draggable: true,
    resizable: true
  }
];
  • 0
    Я не понимаю вашу настоящую проблему. Это как использовать XmlHttpRequest? Это анализ данных JSON? (Подсказка: JSON.parse ) JSON.parse ли какая-то библиотека?
Теги:

3 ответа

0
   // In javascript
    $.ajax({
    type: 'post',
    url: 'data.php',
    data: 'data',
    cache: false,
    success: function(data)
           {
             console.log(data);
           }
    });


    // In data.php

    header('Content-type: application/json');

    $data = array();
    $sql = "SELECT * FROM TABLE_NAME";
    $res = mysql_query($sql);
    while($row = mysql_fetch_assoc($res))
    {
      $data[] = $row;
    }
    echo json_encode($data, true);
0

Javascript: запрос AJAX:

var events;
$.ajax({
   url: '/data.php',
   success: function(data){
         events = JSON.parse(data);
   }
});

data.php выглядит так

$db = new PDO(/* init connection here */);
print json_encode($db->query('select * from 'tablename'')->fetchAll(PDO::FETCH_ASSOC));
0

Если вопрос примерно "Как получить данные из моей базы данных и вывести их как JSON в Javascript", то, надеюсь, следующий псевдокод проведет вас в правильном общем направлении.

<?php
    include 'db.php';

    $json=array();

    /* Query the db */
    $sql='select * from 'events';';
    $res=$db->query( $sql );
    if( $res ){
        while( $rs=$res->fetch_object() ){
            $json[]=array(
                'title'     =>  $rs->title,
                'type'      =>  $rs->type,
                'startsAt'  =>  $rs->startsAt,
                'endsAt'    =>  $rs->endsAt,
                'draggable' =>  $rs->draggable,
                'resizable' =>  $rs->resizable
            );  
        }
    }
    $db->close();
    $js_json_var=json_encode( $json, JSON_FORCE_OBJECT );       
?>

<html>
    <head>
        <title></title>
        <script>
            var json=<?php echo $js_json_var;?>;
            /* Other js code */
        </script>
    </head>
    <body>
        <h1>json</h1>
    </body>
</html>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню