我正在第二页(导出页面)中成功地将所有值从xml转换为CSV。但我想在第一页(座位矩阵)中显示“成功转换数据”的消息。
我无法在seat-matrix.php(第1页)中显示该消息。请帮帮我。
在“Seatmatrix.php”文件中,我有以下代码。
<form name="export" action="export.php">
<input type="submit" name = "export" value="Export" title ='Exports all the above info to excel'>
</form>
在export.php文件中,我有警报功能,并包含了重定向到座位矩阵页面的标题功能,如下所示。
<?php
echo "
<html>
<head>
<SCRIPT LANGUAGE='javascript'>
function Result() {
alert (\"Data exported successfully\");
}
</SCRIPT>
</head>
<body>
";
// export feature code
echo "<SCRIPT LANGUAGE='javascript'>Result();</SCRIPT>\n";
header('location:Seat_matrix.php');
?>
答案 0 :(得分:1)
Javascript在浏览器获取之前不会运行。由于标题重定向,它永远不会在浏览器中运行。
最好的办法是设置一个会话变量,然后检查它是否在Seat_matrix.php中设置。如果是,请添加您的javascript。
答案 1 :(得分:0)
您可以使用JavaScript来重定向:
<SCRIPT type='text/javascript'>
alert ('Data exported successfully');
window.location = 'Seat_matrix.php';
</SCRIPT>
答案 2 :(得分:0)
更简单的方法是将结果发布回原始页面并进行检查。您需要将代码更改为以下内容:
if (isset($_GET['result']) {
if ($_GET['result'] == "success") {
echo "Data exported successfully.");
}
else {
echo "Error exporting data.";
}
}
<form name="export" action="export.php">
<input type="submit" name = "export" value="Export" title ='Exports all the above info to excel'>
</form>
在其他代码中将结果变量添加到url:
header('location:Seat_matrix.php?result=success');
要点:
第一次调用Seat_matrix.php时,没有结果变量,程序现在就运行它。执行第二个程序后,它会回调Seat_matrix.php并传递变量结果。第二次调用Seat_matrix.php时,它会检查结果变量是否已通过并显示消息。您可能需要在您想要消息的位置玩一点。
我希望这会有所帮助。祝你好运!
修改强> 的
要在编写成功消息后删除$ _GET变量,您可以尝试以下方法:
if (isset($_GET['result']) {
if ($_GET['result'] == "success") {
echo "Data exported successfully.");
}
else {
echo "Error exporting data.";
}
unset ($_GET);
}
我没有测试过上述方法,但我相信它可能有用。