Включение данных формы на другой странице - PullRequest
0 голосов
/ 22 июня 2011

Когда я публикую свои данные формы:

<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 ]

4 голосов
/ 22 июня 2011

Вам придется использовать сеанс, чтобы переменные перемещались между такими файлами.

Это довольно просто настроить. В начале каждого PHP-файла вы добавляете этот код для начала сеанса:

session_start();

Вы можете хранить переменные внутри сессии следующим образом:

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

И вы можете ссылаться на них на разных страницах (убедитесь, что вы запускаете session_start() на всех страницах, которые будут использовать сеансы).

2 голосов
/ 22 июня 2011

layouts.php

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

new.php

<?php 
session_start();
echo $_SESSION['bgcolor'];
?>
0 голосов
/ 22 июня 2011

Дайте форму два action="" и посмотрите, что произойдет.Я только что попробовал это на моем сценарии, и он работал нормально.

Возможно, существует более правильный способ решения этой проблемы, но это вариант.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...