我正在尽力让它发挥作用。但 AJAX 对我来说还很陌生。所以坚持住...
好的,我在这里问了几个关于解决这个问题的问题,我必须解决这个问题。我(我们)已经走了很长的路。但现在下一个问题就在这里。
我正在尝试使用 AJAX 在 div 中回显 session 。 AJAX 代码正在运行,我可以将纯文本回显到我想要的 div。 我遇到的唯一问题是它不显示项目的标题。
我有一些项目(本例中假设有 3 个),我希望自定义将这些项目保存在 session 中。所以当客户点击保存时。 ajax div 显示标题。如果自定义单击第三个项目,它将显示第一个和第三个项目,依此类推...
我的 HTML:
<button type="submit" class="btn btn-primary text-right" data-toggle="modal" data-target=".post-<?php the_ID(); ?>" data-attribute="<?php the_title(); ?>" data-whatever="<?php the_title(); ?>">Sla deze boot op <span class="glyphicon glyphicon-heart" aria-hidden="true"></span></button>
我的 AJAX 代码:
$(".ajaxform").submit(function(event){
event.preventDefault();
$.ajax({
type: "POST",
url: "example.com/reload.php",
success: function(data) {
$(".txtHint").html(data);
},
error: function() {
alert('Not OKay');
}
});
return false;
});
我的 PHP reload.php:
<h4>Saved Items</h4>
<p>Blaat...</p>
<?php echo "Product Name = ". $_SESSION['item'];?>
我在这里看到了这段代码:我没有使用这段代码。只是想知道我是否可以将它用于我的代码,然后如何使用?
将 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);
});
}
我如何获得我的 title();:
<?php
// Set session variables
$_SESSION["item"][] = get_the_title();
?>
这是我可以使用的东西吗?有人可以帮我编写代码吗?
提前致谢!
最佳答案
我不太确定你到底想要完成什么,但这里有一个快速而肮脏的示例,使用产品名称发出 HTTP 请求 (POST),将其存储在 PHP session 中,然后输出 session 中的所有产品名称:
HTML
<p>Product A <button class="add-product" data-product="Product A">Add Product</button></p>
<p>Product B <button class="add-product" data-product="Product B">Add Product</button></p>
<p>Product C <button class="add-product" data-product="Product C">Add Product</button></p>
<div id="response">
</div>
JavaScript
$('.add-product').click(function() {
var productName = $(this).data('product');
$.post('addProduct.php', {productName: productName}, function(data) {
$('#response').html(data);
})
});
PHP(addProduct.php)
<?php
session_start();
if (!array_key_exists('products', $_SESSION) || !is_array($_SESSION['products'])) {
$_SESSION['products'] = [];
}
$productName = array_key_exists('productName', $_POST) ? (string) $_POST['productName'] : '';
if ($productName) {
$_SESSION['products'][] = $productName;
}
?>
<h4>Your added products:</h4>
<ul>
<?php foreach ($_SESSION['products'] as $product): ?>
<li><?php echo htmlspecialchars($product); ?></li>
<?php endforeach;?>
</ul>
关于javascript - 使用 Ajax 创建 session 并回显结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38482079/