基本上我希望php脚本根据输入将用户重定位到不同的位置。此输入由另一页面接收。
这是通过帮助修改的脚本。不幸的是它没有回应
<?php
ob_start();
@session_start();
$name = $_SESSION['username'];
if (isset($_POST['username'])){
if (preg_match("/^A/", $_SESSION['username'], $match)) {
header('Location: page.php');
} elseif (preg_match("/^B/", $_SESSION['username'], $match)) {
header('Location: page1.php');
}
else {
header('Location: page2.php');
}
?>
The other (html) code.
<?php
session_start();
$name = $_SESSION['username'];
?>
<!DOCTYPE HTML>
<html>
<body>
<h2>PHP Form Validation Example</h2>
<p><span class="error">* required field.</span></p>
<form method="post" action="test.php">
Name: <input type="text" name="username">
<span class="error">*</span>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
答案 0 :(得分:0)
我想我明白你遇到了什么问题,你想要将某些东西或某人重定向到另一个页面并使用会话..
1.首先,您需要启动输出缓冲以进行重定向,因为标头首先发送到服务器,尝试先搜索它并在php页面的开头使用ob_start();
。
2.然后使用session_start();
启动会话,您现在可以将数据存储在像$user = $_SESSION['username'];
这样的变量中,并使用标题if(isset($_SESSION['username'])){
header('Location: admin.php');
}
重新定位或重定向,并将数据检索到其他页面或甚至可以使用来自另一个页面的相同会话将其传输到变量或在其他页面中执行任何操作。 $othervariable = $_SESSION['username'];