在JQuery中获取PHP会话值
Getting PHP session value in JQuery
我有一个进度条和一个按钮
当它达到100%时,我使用JQuery AJAX来检查用户是否已经在数据库中有一个活动的礼品码。如果他没有,我生成一个新的礼品代码并将其插入数据库。
生成和插入工作正常。我的问题是,我需要在JQuery脚本中的用户帐户ID。我目前正在使用隐藏输入法,它每次都返回我的帐户ID 0,无论我使用哪个帐户。
这是主页面的代码:
<div id ="resultDiv" style="text-align:center;"></div>
<input type="hidden" id="hdnSession" data-value="@Request.RequestContext.HttpContext.Session["ID"]" />
这是JQuery文件(我检查用户是否有使用AJAX的活动礼品码):
$(function() {
var timer = 0;
$('#code').click(function () {
clearInterval(timer)
var value = 0;
timer = setInterval(function () {
value++;
$('.progress-bar').width(value + '%').text(value + '%');
if (value == 100) {
clearInterval(timer);
var sessionValue= $("#hdnSession").data('value');
$.post("checkcode.php",
{
ID: sessionValue
},
function(data)
{
$("#resultDiv").hide().html(data).fadeIn(1000);
});
}
}, 10);
})
});
这是检查的。php文件
<?php
include_once ('connect.php');
if(isset($_POST['ID']))
{
if(!empty($_POST['ID']))
{
$id = $_POST['ID'];
$select_user = "SELECT * from giftcodes WHERE UserID='$id'";
$query = mysqli_query($con, $select_user);
$row = mysqli_num_rows($query);
if(!$row) {
$randomcode = substr(md5(uniqid(mt_rand(), true)), 0, 8);
$insert_code = "INSERT INTO giftcodes (UserID, Giftcode) VALUES ('$id', '$randomcode')";
$query = mysqli_query($con, $insert_code);
echo'<br><hr><h1 style="color: #5cb85c;">Your generated gift code:</h1><br><pre><kbd style="background-color: #5cb85c; color: #000;">'.$randomcode.'<kbd></pre><hr><p class="small" style="font-weight:bold;">You can generate a new code in 24 hours.</p>';
} else {
echo 'You already have an active gift code!';
}
}
}
?>
所以问题是,var sessionValue= $("#hdnSession").data('value');
每次返回0,尽管我确定用户$_SESSION['ID']
已设置。如果我生成一个礼物代码,UserID每次都会被设置为0。
如果你的"main page"是一个php页面,你可以使用这个(从php获得$_SESSION['ID']值,并为隐藏的输入字段分配值
<div id ="resultDiv" style="text-align:center;"></div>
<input type="hidden" id="hdnSession" value="<?php echo $_SESSION['ID']; ?>" />
我可以在PHP文件中使用$_SESSION['ID'] ..我不知道我为什么要把它弄得这么复杂。对不起。
相关文章:
- Php未获取会话的最新值
- 当达到codeigniter/tank auth会话超时时,在ajax调用中处理php重定向
- PHP会话页面刷新不起作用
- 如何使用 php 会话变量作为 Angular Js 数据
- jquery中设置的会话无法进入php
- 通过Javascript更改PHP会话变量
- PHP会话ID变量与AJAX一起返回
- 从javascript变量获取php会话
- 无法获取php会话变量以在javascript中设置var
- 使用Jquery在页面加载上测试php会话变量
- 如何在 PHP 和 JS 中的并发会话之间进行通信
- Fetch Api无法从PHP服务器获取会话
- 如何在php中传递带有JSON响应的会话对象
- PHP未通过javascript代码访问会话变量集
- 需要将一个值从javascript变量保存到php会话
- PHP会话在Aurelia中不起作用
- 通过AJAX将会话变量传递到PHP文件
- 在php中完成会话后重定向
- 如何将会话 php 数据从 PHP 传输到 JS
- 如何从会话PHP中获取jQuery ID