Я могу передавать значения с одной страницы на другую, но мне нужно передать значение следующим образом,
Страница 1:
Используйте что-то вроде этого:
page1.php
<?php
session_start();
$_SESSION['myValue']=3; // You can set the value however you like.
?>
Любая другая страница PHP:
<?php
session_start();
echo $_SESSION['myValue'];
?>
Несколько замечаний, которые следует иметь в виду: вам нужно вызывать session_start()
ДО любого вывода, HTML, эхо - даже пробелов.
Вы можете продолжать изменять значение в сессии - но оно только может быть использовано после первой страницы - то есть, если вы установили его на первой странице, вы не сможете использовать его, пока не перейдете на другую страницу или не обновите страницу.
Сама установка переменной может быть выполнена одним из нескольких способов:
$_SESSION['myValue']=1;
$_SESSION['myValue']=$var;
$_SESSION['myValue']=$_GET['YourFormElement'];
А если вы хотите проверить, установлена ли переменная, прежде чем получить потенциальную ошибку, используйте что-то вроде этого:
if(!empty($_SESSION['myValue'])
{
echo $_SESSION['myValue'];
}
else
{
echo "Session not set yet.";
}
Решение с использованием только POST - без $_SESSION
page1.php
<form action="page2.php" method="post">
<textarea name="textarea1" id="textarea1"></textarea><br />
<input type="submit" value="submit" />
</form>
page2.php
<?php
// this page outputs the contents of the textarea if posted
$textarea1 = ""; // set var to avoid errors
if(isset($_POST['textarea1'])){
$textarea1 = $_POST['textarea1']
}
?>
<textarea><?php echo $textarea1;?></textarea>
Решение с использованием $_SESSION и POST
page1.php
<?php
session_start(); // needs to be before anything else on page to use $_SESSION
$textarea1 = "";
if(isset($_POST['textarea1'])){
$_SESSION['textarea1'] = $_POST['textarea1'];
}
?>
<form action="page1.php" method="post">
<textarea name="textarea1" id="textarea1"></textarea><br />
<input type="submit" value="submit" />
</form>
<br /><br />
<a href="page2.php">Go to page2</a>
page2.php
<?php
session_start(); // needs to be before anything else on page to use $_SESSION
// this page outputs the textarea1 from the session IF it exists
$textarea1 = ""; // set var to avoid errors
if(isset($_SESSION['textarea1'])){
$textarea1 = $_SESSION['textarea1']
}
?>
<textarea><?php echo $textarea1;?></textarea>
ВНИМАНИЕ!!! - Здесь нет валидации!!!