将三个变量通过PHP json_编码传递到javascript
这是我的php代码将三个变量通过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
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;
...