Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将三个变量通过PHP json_编码传递到javascript_Javascript_Php - Fatal编程技术网

将三个变量通过PHP json_编码传递到javascript

将三个变量通过PHP json_编码传递到javascript,javascript,php,Javascript,Php,这是我的php代码 <?php session_start(); require_once __DIR__ . '/../../core/FbChatMock.php'; if (isset($_POST['id'])) { $userId = (int) $_SESSION['user_id']; $id = htmlentities($_POST['id'], ENT_NOQUOTES);

这是我的php代码

 <?php
      session_start();
      require_once __DIR__ . '/../../core/FbChatMock.php';
      if (isset($_POST['id'])) 
       {
        $userId = (int) $_SESSION['user_id'];
        $id = htmlentities($_POST['id'],  ENT_NOQUOTES);
        $chat = new FbChatMock(); 
        $messages = $chat->getchat($userId, $id); 
        echo json_encode($messages);
       }
        $chat_converstaion = array();
        $chat_converstaion[] = '<table>';  
     ?> 
我想将$userId、$id和$messages这三个变量传递给json_encode函数,因为我已经传递了$messages。这是我的javascript函数,我在这里使用这个json_编码

  getMessage:function(ID) {
  alert('function is at getMessage');
  var that = this;
  $.ajax({
  url: '../forms/ajax/get_messages.php',
  method:'post',
  data: {id: ID},
  success: function(data) {
    alert(data);
    var messages = JSON.parse(data);
    for (var i = 0; i < messages.length; i++)
      {
        var msg = messages[i];
        // alert (msg.message);
        fbChat.addUserMessage('',msg.message);
      }
        // alert(data);
        $('.msg_head').val('');
 //     that.getMessages();
    }
});
   },
  addUserMessage:function (user, message) 
     {
       msgBoxList = $('.msg_box').find('.msg_body');
       msgBoxList.append("<div class='msg_a'>"+message+"</div>");
     }
 };

如何将php代码中的变量转换为javascript ajax调用?

只需构建一个包含所有希望传递的变量的数组,然后对其进行json编码:


在PHP中稍作修改:

echo json_encode(['messages' => $messages, 'id' => $id, 'userId' => $userId]);
和JS:

    ...
    success: function(data) {
        var data = JSON.parse(data);
        var messages = data.messages;
        var id = data.id;
        var userId = data.userId;
        ...
echo json_encode(['messages' => $messages, 'id' => $id, 'userId' => $userId]);
    ...
    success: function(data) {
        var data = JSON.parse(data);
        var messages = data.messages;
        var id = data.id;
        var userId = data.userId;
        ...