您的位置:首页 > 编程语言 > PHP开发

knockoutjs php 数据交互

2016-01-11 10:20 701 查看
php端生成数据
<?php
function getOrders() {
include_once 'mysql_connect.php';
$email = $_SESSION['Email'];

$query = sprintf("SELECT * FROM `Order` WHERE `Email` = '%s' order by id desc",
mysqli_real_escape_string($con, $email));

$result = mysqli_query($con, $query);
$data = array();
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
$data[] = $row;
}

mysqli_close($con);
return json_encode($data);//json_encode() is the key
}
?>


显示php端数据

$(document).ready(function () {
//Pass JSON encoded data directly into javascript variable
var data = <?php getOrders(); ?> ;
var vm = new ViewModel(data);
ko.applyBindings(vm);
});

function ViewModel (data){
self = this;
self.Orders = ko.mapping.fromJS(data);
}


用ko向php发送数据
function ViewModel (){
self = this;
self.Order = {
Email:ko.observable(),
FirstName : ko.observable(),
LastName : ko.observable(),
URL : ko.observable(),
Comments : ko.observable()
};
self.CreateOrder = function() {
//Here is where you convert the data to something php can swallow
var data = ko.toJS({"Data":order});
$.ajax({
url: "CreateOrder.php",
type: 'post',
data: data,
success: function (result) {
console.log(result);
}
});
};
}


接收数据
<?php
include_once 'mysql_connect.php';
//recieve raw data into php variable
$data = $_POST['Data'];

//extract each field from raw data
$email = $data['Email'];
$firstName = $data['FirstName'];
$lastName = $data['LastName'];
$comments = $data['Comments'];
...
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  knockoutjs php