2016-04-04 33 views
-1

我收到结果中的空值:冠军,但在数据库中有一个在location_end值如何获取从我的SQL事件 - 完整的日历

<?php 
$bdd = new PDO('mysql:host;dbname', 'user', 'pass'); 

    $result = $bdd->prepare("SELECT * FROM schedule"); 
     $result->execute(); 
     $event_array = array(); 
     $result->setFetchMode(PDO::FETCH_ASSOC); 
     while ($record = $result->fetch()) { 
      $event_array[] = array(
       'id' => $record['id'], 
       'title' => $record['location_end'], 
       'start' => $record['start_time'], 
       'end' => $record['end_time'], 
      ); 
     } 
    echo json_encode($event_array); 


    events: { 
      url: 'http://localhost/FleetManagement/getEvents.php', 
      type: 'POST', 
      dataType: 'json', 

      success: function(){ 
       alert('Get Events Successfull!!'); 
       $('#calendar').fullCalendar('updateEvent',event); 
      }, 
      error: function(error) { 
       alert(error); 
      } 
     } 

结果:标题应具有的价值,但我收到空

result [{"id":"1","title":null,"start":"2016-01-14 00:15:00","end":"2016-01-14 01:00:00"},{"id":"2","title":null,"start":"2016-01-20 23:45:00","end":"2016-01-20 23:45:00"},{"id":"3","title":null,"start":"2016-01-14 23:45:00","end":"2016-01-14 23:45:00"},{"id":"4","title":null,"start":"2016-01-14 23:45:00","end":"2016-01-14 23:45:00"}] 

回答

0
在结果标题

,我收到空值

你试着到u在location_end字段中,但该列不在您的SQL选择中;

SELECT id, start_time, end_time, status, approval_status FROM schedule 

您需要将该列添加到您的SQL;

SELECT id, location_end, start_time, end_time, status, approval_status FROM schedule 
+0

对不起,它不是最新的源代码,我编辑了我的查询!相同的结果在标题中为空值 – Dayle

0

尝试在json_encode之前打印$event_array。 在我看来'location_end'包含一些非utf8编码字符。

+0

如何删除非utf8编码字符? – Dayle

+0

有很多方法:像你的表utf8的设置字符集。在数据插入时设置“SET CHARACTER SET utf8”。当插入数据时你可以使用“utf_encode”&当前端数据显示时使用“utf_decode” –

相关问题