我正在使用ajax将数据传递到php会话,以便保存js动力购物车的内容。这是测试js代码:
//js.html
<html>
<body>
<script>
function addCart(){
var brandName = $('iframe').contents().find('.section01a h2').text();
$.post("sessions.php", {"productName": brandName}, function(results) {
//success alert
});
}
</script>
</body>
</html>
这是php代码:
//session.php
<?php
session_start();
// store session data
$_SESSION['productName'] = $_POST['productName'];
?>
<html>
<body>
<?php
//retrieve session data
echo "Product Name = ". $_SESSION['productName'];
?>
</body>
</html>
然而,我需要的是将数据保存到会话后,我想在侧栏中的迷你购物车中将其输出给用户。
当我运行js.html
时,它成功将数据传递给sessions.php
。但是echo
中未显示js.html
。如果我运行sessions.php
,则显示echo
但不在我需要的页面中。
我的问题是,无论是通过PHP还是js,我如何在我需要的页面上回显或向用户显示这些数据?
由于
答案 0 :(得分:2)
将session.php
更改为:
<?php
session_start();
// store session data
$_SESSION['productName'] = $_POST['productName'];
//retrieve session data
echo "Product Name = ". $_SESSION['productName'];
?>
在您的HTML代码中:
function addCart(){
var brandName = $('iframe').contents().find('.section01a h2').text();
$.post("sessions.php", {"name": brandName}, function(results) {
$('#SOME-ELEMENT').html(results);
});
}
答案 1 :(得分:1)
$.post("sessions.php", {"productName": brandName}, function(results) {
alert(results.productName);
},"json");
//session.php
<?php
session_start();
// store session data
$_SESSION['productName'] = $_POST['productName'];
echo json_encode(array('productName' => $_SESSION['productName']);
?>
答案 2 :(得分:0)
使用纯Javascript
由于您正在拨打AJAX
电话,因此未显示回音。我看不出是什么阻止您输出JS
代码中的详细信息,在Ajax
请求的下方。
$.post("sessions.php", {"name": brandName}, function(results) {
//As in put the code here.
});
使用mootools Library
或者,您可以查看mootools
库。该库有一个Request
对象,使用onSuccess
方法。您可以将购物篮代码移植到onSuccess
方法中。