如何在PHP文件中触发PHP文件的执行

时间:2015-03-12 23:45:19

标签: php html

所以我有一个基本形式的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;
    ?>

3 个答案:

答案 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'];

我猜测您的分配任务旨在演示将值从脚本传递到脚本的各种方法。 祝你好运