重定向到PHP isn';中带有页眉函数的页面的id;行不通
我正在创建一个网站,需要使用PHP从一个页面重定向到同一页面的id。当调用标头时,它只是重定向到没有指定id的页面,即使在header函数中调用它以重定向到具有id的页面部分 它应该重定向到:重定向到PHP isn';中带有页眉函数的页面的id;行不通,php,redirect,Php,Redirect,我正在创建一个网站,需要使用PHP从一个页面重定向到同一页面的id。当调用标头时,它只是重定向到没有指定id的页面,即使在header函数中调用它以重定向到具有id的页面部分 它应该重定向到: header('Location: '.$findHttp.'://'.$_SERVER["HTTP_HOST"].'/~a7068104/2013-2014/Lab_13/Reports/Reports.php#redirect'); 但它实际上指向: header('Location: '.$fin
header('Location: '.$findHttp.'://'.$_SERVER["HTTP_HOST"].'/~a7068104/2013-2014/Lab_13/Reports/Reports.php#redirect');
但它实际上指向:
header('Location: '.$findHttp.'://'.$_SERVER["HTTP_HOST"].'/~a7068104/2013-2014/Lab_13/Reports/Reports.php');
我的代码是否存在导致此问题的问题。(顺便说一句,这是另一个问题的延续,但我的代码没有发布在另一个问题中,即使我想删除另一个问题,我也无法删除。)
这是我的代码:
<?php
if (isset($_POST['reportsubmit'])) {
$radio = $_POST['report'];
if ($radio == 'customer') {
$redirect = 'Click <a href="#customer">here</a> to continue on with the form';
} else if ($radio == 'item') {
$redirect = 'Click <a href="#item">here</a> to continue on with the form';
} else if ($radio == 'department') {
$redirect = 'Click <a href="#department">here</a> to continue on with the form';
} else if ($radio == 'person') {
$redirect = 'Click <a href="#person">here</a> to continue on with the form';
}
$findHttp = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off' ? 'https' : 'http';
header('Location: '.$findHttp.'://'.$_SERVER["HTTP_HOST"].'/~a7068104/2013-2014/Lab_13/Reports/Reports.php#redirect');
} else if (isset($_POST['customersubmit'])) {
//process form
//redirect
exit;
} else if (isset($_POST['itemsubmit'])) {
//process form
//redirect
exit;
} else if (isset($_POST['departmentsubmit'])) {
//process form
//redirect
exit;
} else if (isset($_POST['personsubmit'])) {
//process form
//redirect
exit;
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Gordmart MIS Reports</title>
<!--<link rel="stylesheet" href="../css/Main.css">-->
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.css">
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.js"></script>
</head>
<body>
<div data-role="page" class="frame" id="report">
<div data-role="header">
<?php include("Header.php");?>
</div>
<div data-role="main" id="main">
<h3>Would you like to view a report grouped by customers, items, sales departments, or sales people?</h3>
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF;"], ENT_QUOTES, "utf-8"); ?>" method="post">
<input type="radio" name="report" value="customer"><p>Customers</p>
<input type="radio" name="report" value="item"><p>Items Sold</p>
<input type="radio" name="report" value="department"><p>Sales Departments</p>
<input type="radio" name="report" value="person"><p>Sales People</p>
<input type="submit" name="reportsubmit" value="Submit">
</form>
</div>
<div data-role="footer">
<h1>Footer Text</h1>
</div>
</div>
<div data-role="page" class="frame" id="customer">
<div data-role="header">
<?php include("Header.php");?>
</div>
<div data-role="main" id="main">
<h3>Would you like to view a cumulative report of all customers, or a single report of just one?</h3>
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF'], ENT_QUOTES, 'utf-8'); ?>" method="post">
<input type="radio" name="customer" value="all"><p>All</p>
<input type="radio" name="customer" value="one"><p>One</p><br>
<input type="submit" name="customersubmit" value="Submit">
</form>
</div>
<div data-role="footer">
<h1>Footer Text</h1>
</div>
</div>
<div data-role="page" class="frame" id="item">
<div data-role="header">
<?php include("Header.php");?>
</div>
<div data-role="main" id="main">
<h3>Would you like to view a cumulative report of all sales items, or a single report of just one?</h3>
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF'], ENT_QUOTES, 'utf-8'); ?>" method="post">
<input type="radio" name="item" value="all"><p>All</p>
<input type="radio" name="item" value="one"><p>One</p><br>
<input type="submit" name="itemsubmit" value="Submit">
</form>
</div>
<div data-role="footer">
<h1>Footer Text</h1>
</div>
</div>
<div data-role="page" class="frame" id="department">
<div data-role="header">
<?php include("Header.php");?>
</div>
<div data-role="main" id="main">
<h3>Would you like to view a cumulative report of all sales departments, or a single report of just one?</h3>
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF'], ENT_QUOTES, 'utf-8'); ?>" method="post">
<input type="radio" name="department" value="all"><p>All</p>
<input type="radio" name="department" value="one"><p>One</p><br>
<input type="submit" name="departmentsubmit" value="Submit">
</form>
</div>
<div data-role="footer">
<h1>Footer Text</h1>
</div>
</div>
<div data-role="page" class="frame" id="person">
<div data-role="header">
<?php include("Header.php");?>
</div>
<div data-role="main" id="main">
<h3>Would you like to view a cumulative report of all sales people, or a single report of just one?</h3>
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF'], ENT_QUOTES, 'utf-8'); ?>" method="post">
<input type="radio" name="person" value="all"><p>All</p>
<input type="radio" name="person" value="one"><p>One</p><br>
<input type="submit" name="personsubmit" value="Submit">
</form>
</div>
<div data-role="footer">
<h1>Footer Text</h1>
</div>
</div>
<div data-role="page" class="frame" id="redirect">
<div data-role="header">
<?php include("Header.php");?>
</div>
<div data-role="main" id="main">
<?php echo $redirect;?>
</div>
<div data-role="footer">
<h1>Footer Text</h1>
</div>
</div>
</body>
</html>
戈德马特MIS报告
是否要查看按客户、项目、销售部门或销售人员分组的报告?
这是因为哈希是一个浏览器实用程序。根据我的理解,您根本无法从服务器端(PHP)重定向到带有哈希的URL
实现这一点的唯一方法是通过javascript。这显示了如何在JavaScript中实现这一点。在您的情况下,您必须捕获表单submit,然后调用window.location。用适当的哈希替换。哈希部分永远不会发送到服务器。它只存在于web浏览器中,因此您必须编写javascript代码才能获得它。当然,您可以使用javascript将其发送到服务器