我正在尝试使用会话变量而不是使用jquery来执行以下功能。 我的页面上有一些文字invoice.php:
Text A
当用户第一次访问该页面时,我通过使用会话变量将此文本作为页面标题回显:
<?php $_SESSION['ref'] = '<div class="inv_ref"><h23>Text A</h23></div>'; ?>
<?php if (isset($_SESSION['ref'])) {
echo $_SESSION['ref'];
unset($_SESSION['ref']); } ?>
但是,一旦用户在该页面上提交以下表单:
<form action="include/process_invoice.php" method="post" enctype="multipart/form-data">
<input type="text" id="partNumber" placeholder="e.g. PO012345" class="login_form" />
<input type="submit" value="Upload Invoice" name="submit" class="file">
</form>
然后在我的网页上处理该表单&#39; process_invoice.php&#39;一旦完成,我将两个新会话回显到我的页面invoice.php:
$_SESSION['message2'] = '<div id="message_box3"><div class="boxclose" id="boxclose" onclick="this.parentNode.parentNode.removeChild(this.parentNode);">✖</div><h23>Thank You!</h23><p>You have successfully submitted your invoice.</p> </div>';
$_SESSION['ref2'] = '<div class="inv_ref"><h23>REF: 12345678</h23></div>';
unset($_SESSION['ref']);
header("location:../invoice.php");
所以你可以看到我试图取消我的会话&#39; ref&#39;这是我的文字A&#39;并隐藏此文字,以便在我的会话&#39; ref2&#39;是可见的吗?
这可能吗?如果可以,有人可以告诉我哪里出错了吗?感谢
答案 0 :(得分:0)
在invoice.php中,将其替换为:
<?php if (isset($_SESSION['ref'])) {
echo $_SESSION['ref'];
unset($_SESSION['ref']); } ?>
为此:
<?php if (isset($_SESSION['ref2'])) {
echo $_SESSION['ref2'];
} else {
echo $_SESSION['ref'];
} ?>
当您的invoice.php重新加载时,您会看到REF: 12345678
而不是Text A
。