所以我有一个基本形式的HTML文件。说
<form method="POST" action="test1.php">
Name: <input type="text" name="name" id="name" />
<input type="submit" value="Submit" />
</form>
现在我执行了我的test1.php文件,如下所示:
<?php
$name = $_POST['name'];
?>
所以它所做的就是从HTML表单中获取值。现在我有第二个PHP文件test2.php需要从第一个test1.php文件$ name获取值并通过echo语句输出它。
我是PHP新手,使用一个PHP文件从HTML表单输出值很好,但我不知道如何接近第二个。
我知道您可以使用include statement来继承变量及其值,但它似乎在我的实例中无效。我几乎肯定的问题是我没有test2.php实际执行。而且我不知道如何处理这个问题。任何帮助表示赞赏。
编辑:这就是我想要的test2.php。 $ name必须与从test1.php
中的HTML表单中检索的值相同 <?php
echo $name;
?>
答案 0 :(得分:1)
只需在test1.php中使用包含文件test2.php:
<?php
$name = $_POST['name'];
include('test2.php');
?>
每当你使用include()或require()包含文件时,文件总是被“执行”,所以你的代码中可能还有别的错误。
test1.php:
<?php
$name = $_POST['name'];
include('test2.php');
?>
test2.php:
<?php
echo $name;
?>
答案 1 :(得分:0)
我建议在test1中启动一个会话,将var $ name分配给会话,然后在test2上选择会话。
test1.php
session_start();
$name = filter_var($_POST['name'],FILTER_SANITIZE_STRING);
$_SESSION['test1']['name'] = $name;
test2.php
session_start();
$name = $_SESSION['test1']['name'];
试试。
答案 2 :(得分:0)
@bloodyKnuckles,你的作业是开放式的,因为你可以通过多种方式完成你想要做的事情。
include('test2.php');
是一种选择。另一个是
header("Location: test2.php");
exit();
使用header选项,$ _SESSION变量可以正常工作。如果test1.php有任何HTML输出,你可以考虑使用AJAX调用或urlencode()你的字符串。
test1.php
echo '<a href="test2.php?name=', urlencode($name), '">Click Me</a>';
test2.php
$name = $_GET['name'];
我猜测您的分配任务旨在演示将值从脚本传递到脚本的各种方法。 祝你好运