2015-11-19 4 views
1

Я новичок в JSon иЙ получают данные из PHP коды в формате JSON ..Получить данные в формате JSON из PHP с использованием JavaScript

[ 
    { 
     "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') Использует ли какая-нибудь библиотека? –

ответ

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> 
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
// 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); 
Смежные вопросы