在其他页面中包含表单数据

时间:2011-06-22 03:34:31

标签: php html forms

当我发布表单数据时:

<form action="layouts.php" method="post">
  <input type="text" name="bgcolor">
  <input type="submit" value="Submit" align="middle">
</form>

到一个php页面,“layouts.php”,它返回字符串,如预期的那样:

$bgcolor = $_POST['bgcolor'];
echo $bgcolor; //returns "red"
echo gettype($bgcolor); // returns "string"

但是当我在另一个页面中包含“layouts.php”时,它返回NULL。

<?php
  include("php/layouts.php");
  echo $bgcolor; //
  echo gettype($bgcolor); //returns "NULL"
?>

如何将变量传递到另一个页面?

3 个答案:

答案 0 :(得分:4)

你必须使用一个会话让变量在这些文件之间浮动。

设置起来非常简单。在每个PHP文件的开头,添加此代码以开始会话:

session_start();

您可以在会话中存储变量,如下所示:

$_SESSION['foo'] = 'bar';

您可以跨页面引用它们(确保在将使用会话的所有页面上运行session_start()。)

答案 1 :(得分:2)

<强> layouts.php

<?php 
session_start();
$bgcolor = $_POST['bgcolor'];
$_SESSION['bgcolor'] = $bgcolor;
?>

<强> new.php

<?php 
session_start();
echo $_SESSION['bgcolor'];
?>

答案 2 :(得分:0)

将表格提交为action="",看看会发生什么。我只是在我的剧本上尝试过,它运行良好。

可能存在一种更合适的解决方法,但这是一种选择。