我正在用 PHP 和 MySql 做 HTML。在用户执行了一些数据库操作后,我的系统将用户重定向到原始数据库页面,以便向他显示更新后的表。(我完成了这部分)。同时,我希望在原始页面(系统移动的那个页面)上向用户显示一条消息,以通知他操作成功。我怎么可能显示此消息?
这是我移动到其他页面的 php 代码。
Header( 'Location: Database.php');
我正在用 PHP 和 MySql 做 HTML。在用户执行了一些数据库操作后,我的系统将用户重定向到原始数据库页面,以便向他显示更新后的表。(我完成了这部分)。同时,我希望在原始页面(系统移动的那个页面)上向用户显示一条消息,以通知他操作成功。我怎么可能显示此消息?
这是我移动到其他页面的 php 代码。
Header( 'Location: Database.php');
Header( 'Location: Database.php?success=1' );
在 Database.php 页面中:
if ( isset($_GET['success']) && $_GET['success'] == 1 )
{
// treat the succes case ex:
echo "Success";
}
将其存储在session
“flash”消息中:
$_SESSION['message'] = 'success';
并Database.php
在重定向后显示。显示后也删除其内容:
print $_SESSION['message'];
$_SESSION['message'] = null;
这样做的好处是,每次用户刷新页面时都不会再次显示该消息。
你可以这样做:
$_SESSION['msg']="Updation successfully completed";
header("location:database.php");
在 database.php 上
echo $_SESSION['msg'];
unset($_SESSION['msg']);
一种解决方案是将消息放在 php 文件中的 SESSION 中。所以在原始页面中,你会得到那个 SESSION 变量,并显示它。前任:
在你的 php 文件中:
session_start();
$_SESSION["message"]="MESSAGE OF SUCCESS"
在您的原始文件中:
session_start();
if(isset($_SESSION["message"]))
{
echo"SUCCESS OR THE MESSAGE SET IN THE VAR SESSION";
unset($_SESSION["message"]);
}
解决这个问题的最好方法是在你的操作成功后在流程页面设置一个会话消息。然后在重定向页面中检查会话消息是否已设置。如果已设置,则只需回显该消息。下面的代码可能会对您有所帮助。
$_SESSION['MSG']="Your data is saved";
Header( 'Location: Database.php');
exit;
//now in the database.php page write at the top
<?php
if(isset($_SESSION['MSG'])){
echo $_SESSION['MSG'];
}
?>//its very simple,you can also format the message by using different html attributes
在重定向到新页面之前,您可以设置一个带有您想要显示的消息的 cookie,在加载原始页面时,您将看到是否设置了这个特殊的 cookie,如果是,您可以显示存储在 cookie 中的成功消息。