[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: передать переменную из одного php файла в другой
DooMka
Столкнулся с следующей проблемой, а именно суть её такова, что нужно передать переменную из одного файла в другой. Для этого в php существует два мне известных способов это get и post. GET способ уже занят, для этого я решил воспользоваться методом post, но проблема в том, что данный метод предполагает передачу данных в другой файл только при нажатии на определённую кнопку.
Возможно-ли передавать переменную способом POST без использования кнопки Отправить?

1-й файл index.php
<?
$a = "123";
echo "<form method='POST' action='index2.php'>
<input name='a' type='text' value='a'>
<input type='hidden' name='submit' id='submit' value='Сохранить изменения'>
<a href='index2.php'>переход</a></form>"
;
echo "это превая страница $a";
echo "<a href='index2.php'>переход</a>";
echo "";
?>


2-й файл index2.php
<?
if (isset($_POST['a'])) {$a = $_POST['a']; if ($a == '') {unset($a);}}

echo $_POST['a'];
echo $a;
?>




Спустя 19 минут, 9 секунд (23.11.2011 - 19:30) zeromind написал(а):
Цитата
Возможно-ли передавать переменную способом POST без использования кнопки Отправить?

На сколько я знаю - нет, submit - отправляет форму на сервер..

чем тебе $_SESSION массив не устраивает? открываеш сессию, и переменные в ней хранятся, пока не уничтожишь..

Спустя 16 минут, 59 секунд (23.11.2011 - 19:47) Winston написал(а):
Цитата (DooMka @ 23.11.2011 - 18:11)
Возможно-ли передавать переменную способом POST без использования кнопки Отправить

Нет, не возможно. Ну разве что только использовать ajax или curl.

Спустя 1 день, 6 минут, 1 секунда (24.11.2011 - 19:53) I++ написал(а):
<?php
session_start();

if(!isset($_SESSION['stage']))
$_SESSION['stage'] = null;

switch($_SESSION['stage'])
{
default:
if(!isset($_POST['a']))
{
echo '<p>Первая страница</p><form method="POST" action=""><input name="a" type="text" value="a"><input type="submit" name="submit" value="Сохранить изменения"></form>';
break;
}
else
{
$_SESSION['stage'] = 1;
}

case 1:

if(!isset($_POST['b']))
{
echo '<p>Вторая страница</p><form method="POST" action=""><input name="b" type="text" value="b"><input type="submit" name="submit" value="Сохранить изменения"></form>';
break;
}
else
{
$_SESSION['stage'] = 2;
}


case 2:

if(!isset($_POST['c']))
{
echo '<p>Третья страница</p><form method="POST" action=""><input name="c" type="text" value="c"><input type="submit" name="submit" value="Сохранить изменения"></form>';
break;
}
else
{
$_SESSION['stage'] = 3;
}

case 3:
echo '<p>Финиш!</p>';
}

?>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.