如果 session 存在,加载模态弹出窗口?
Load a modal popup if a session exists?
您好,如标题所示,如果页面加载时存在 session,我想加载模式弹出窗口。
我目前将其用作一种 Flash 消息。例如,如果提交表单,php 脚本会创建成功 session,其中包含成功消息。
然后重定向到上一页。该页面上有一个 If 语句,用于检查 session 是否存在,如果存在,则将其回显,然后销毁 session,因此如果重新加载页面,它会再次显示。
因此,我不想显示成功消息,而是希望打开一个模式 window。
我原以为这会很简单,但我似乎做不到。
虽然我确定这是重复的,并且可能很容易通过 google 找到...是的,这可能。
你可以这样做:
<?php if (isset($_SESSION['success'])) { ?>
<div class="modal hide fade" id="myModal">
<div class="modal-header">
<a class="close" data-dismiss="modal">×</a>
<h3>Success</h3>
</div>
<div class="modal-body">
<p><?php echo $_SESSION['success']; ?></p>
</div>
<div class="modal-footer">
<a class="close btn" data-dismiss="modal">Close</a>
</div>
</div>
<script type="text/javascript">
$(window).load(function () {
$('#myModal').modal('show');
});
</script>
<?php } ?>
这纯粹是一个例子。我会做很多不同的事情,但这应该会引导你朝着正确的方向前进。
再次感谢您的帮助。这是我在帮助表格 Dish_Rex 中使用的解决方案(谢谢)。
我有另一个 PHP 脚本在后台工作,从提交开始创建一个名为 'loyalty' 的会话并重定向回工作页面。
此页面然后检查是否设置了 'loyalty' 会话并调用模式加载。然后取消设置会话,这样它就不会在页面重新加载时再次显示。
<?php
if(Session::exists('loyalty')) {
echo "<script> $(function(){ $(window).load(function(){ $('.modal_card').rsModal(); }); }); </script>";
unset($_SESSION['loyalty']);
}
?>
我希望这对其他人有帮助。
尝试了几件事,这对我来说效果最好:
if (isset($_SESSION['error'])) {
$error = "
<script>$('<div></div>').appendTo('body')
.html('<div><h6> ".$_SESSION['error']."</h6></div>')
.dialog({
modal: true,
dialogClass: \"alert\",
autoOpen: true,
// width: 'auto',
resizable: false,
background: '#0480be',
close: function(event, ui) {
$(this).remove();
}
});
</script>";
unset($_SESSION['error']);
}
您好,如标题所示,如果页面加载时存在 session,我想加载模式弹出窗口。
我目前将其用作一种 Flash 消息。例如,如果提交表单,php 脚本会创建成功 session,其中包含成功消息。
然后重定向到上一页。该页面上有一个 If 语句,用于检查 session 是否存在,如果存在,则将其回显,然后销毁 session,因此如果重新加载页面,它会再次显示。
因此,我不想显示成功消息,而是希望打开一个模式 window。
我原以为这会很简单,但我似乎做不到。
虽然我确定这是重复的,并且可能很容易通过 google 找到...是的,这可能。
你可以这样做:
<?php if (isset($_SESSION['success'])) { ?>
<div class="modal hide fade" id="myModal">
<div class="modal-header">
<a class="close" data-dismiss="modal">×</a>
<h3>Success</h3>
</div>
<div class="modal-body">
<p><?php echo $_SESSION['success']; ?></p>
</div>
<div class="modal-footer">
<a class="close btn" data-dismiss="modal">Close</a>
</div>
</div>
<script type="text/javascript">
$(window).load(function () {
$('#myModal').modal('show');
});
</script>
<?php } ?>
这纯粹是一个例子。我会做很多不同的事情,但这应该会引导你朝着正确的方向前进。
再次感谢您的帮助。这是我在帮助表格 Dish_Rex 中使用的解决方案(谢谢)。
我有另一个 PHP 脚本在后台工作,从提交开始创建一个名为 'loyalty' 的会话并重定向回工作页面。
此页面然后检查是否设置了 'loyalty' 会话并调用模式加载。然后取消设置会话,这样它就不会在页面重新加载时再次显示。
<?php
if(Session::exists('loyalty')) {
echo "<script> $(function(){ $(window).load(function(){ $('.modal_card').rsModal(); }); }); </script>";
unset($_SESSION['loyalty']);
}
?>
我希望这对其他人有帮助。
尝试了几件事,这对我来说效果最好:
if (isset($_SESSION['error'])) {
$error = "
<script>$('<div></div>').appendTo('body')
.html('<div><h6> ".$_SESSION['error']."</h6></div>')
.dialog({
modal: true,
dialogClass: \"alert\",
autoOpen: true,
// width: 'auto',
resizable: false,
background: '#0480be',
close: function(event, ui) {
$(this).remove();
}
});
</script>";
unset($_SESSION['error']);
}