X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Передача данных с одной страницы на другую
int_hb
int_hb
Topic Starter сообщение 26.4.2010, 19:34; Ответить: int_hb
Сообщение #1


Всем доброго времени суток!Ответьте пожалуйста на очень простой вопрос,с которым я так и не разобрался(
"Как передать данные с одной страницы на другую,используя только php?"

Великий гугл зашвырял меня одинаковыми статьями про передачу через куки и ссылки,а надо что бы без явной формы.
___
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
</head>

<body>
<form action="test2.php?per1=<?php echo($per1); ?>" method="get">
<input name="per1" />
<input type="submit" value="OK" />
</form>
<?
$per1 =$_POST['per1'];  
?>
</body>
</html>
первая страницы(отправитель)

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
</head>

<body>
<?
$per1=$_GET['per1'];
echo "$per1";
?>
</body>
</html>

Вторая страницы (получатель)
Вот этим способом работает (через ссылку),но нужно что бы явных элементов формы не было на страницы (<input name="per1" />),кроме кнопки отправки.Но Без поля ввода работать перестает(
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
</head>

<body>
<form action="test2.php?per1=<?php echo($per1); ?>" method="get">
<?
$per1="fff";
$per1 =$_POST['per1'];  
?>
<input type="submit" value="OK" />
</form>
</body>
</html>

Как сделать что бы работало?:wacko:
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 26.4.2010, 22:03; Ответить: alexdrob
Сообщение #2


<input name="per1" type="hidden" />
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Arks
Arks
сообщение 26.4.2010, 22:47; Ответить: Arks
Сообщение #3


Скрытые поля форм не всегда удобны т.к. пользователь имеет к ним очень простой доступ через html. Суперглобальные массивы сами по себе предоставляют доступ к данным из любого скрипта открытого браузером. Примером является суперглобальный массив $_SESSION[''] который передается посредством временных сессионных cookie.

alexdrob, в Вашем примере имя и значение поля <input> просто автоматически запишется в суперглобальный массив $_GET или $_POST при отправки формы.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
int_hb
int_hb
Topic Starter сообщение 26.4.2010, 22:50; Ответить: int_hb
Сообщение #4


Или надо ещё что то изменить?
<body>
<form action="test2.php?p=<?php echo($p); ?> method="get">
<input name="p" type="hidden" />
<input type="submit" value="OK" />
</form>
<?
$p="Return";
$p=$_POST['p'];
?>
</body>
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Arks
Arks
сообщение 26.4.2010, 23:10; Ответить: Arks
Сообщение #5


int,если позволите прокомментирую код а Вы сами думайте надо ли что-то изменить.
1. создает тело документа
2. создает форму, форма отправляет данные методом get в скрипт test2.php в запросе указывается поле p которому присваевается значение переменной $p, т.е. после выполнения скрипта(инициализации DOM) методом get будет передано значение поля p из суперглобального массива $_POST
3. помещаем в форму скрытое поле p(оно автоматически попадет в суперглобальный массив $_GET при отправке формы)
4. помещаем кнопку для отправки данных формы

Согласитесь - что-то тут явно лишнее?
Я бы сделал так:
отправка:
$_GET['abc']='данные';
прием:
$a=$_GET['abc']
echo $a выведет нам "данные"
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 27.4.2010, 9:45; Ответить: ZhukV
Сообщение #6


(Arks @ 27.4.2010, 02:10) *
$_GET['abc']='данные';

Как ты это се представляеш?

Иногда был случай, что нужно было дропнуть один параметр из ПОСТ. Пробывал как хочеш, не работет ничерта
[PHP]
unset($_POST["ADD"]);
$_POST["ADD"] = "";
[/PHP]
Ни один из этих вариантов не сработал.

В даном примере можна сделать логику на основе КАПТЧИ. Создается скрытое поле. В сессию записывается это ж скрытое поле. Если значение совпадают, все ОК, в противном случае все "намного хуже" :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
int_hb
int_hb
Topic Starter сообщение 27.4.2010, 9:56; Ответить: int_hb
Сообщение #7


Возможно обрывки кода неправильно вставляю и поэтому не работает.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Apay
Apay
сообщение 27.4.2010, 10:40; Ответить: Apay
Сообщение #8


int, в форме напишите method="post" и используйте hidden-поля как посоветовал alexdrob, а вместо $_GET используйте $_POST, вот вам и будет передача неявным способом.

Arks, к вашему сведению, через куки или через get передается только id сессии, все остальное хранится на сервере
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
int_hb
int_hb
Topic Starter сообщение 27.4.2010, 21:26; Ответить: int_hb
Сообщение #9


(Apay @ 27.4.2010, 13:40) *
int, в форме напишите method="post" и используйте hidden-поля как посоветовал alexdrob, а вместо $_GET используйте $_POST, вот вам и будет передача неявным способом.
...


Вот сделал как понял,но видимо не так как надо сделать.Потому что значение не выводиться на второй странице.=(((((

<body>
<form action="test2.php" method="post">
<input name="p" type="hidden" />
<input type="submit" value="OK" />
</form>
<?
$p="Return";
$p=$_POST['p'];
?>
</body>
Первая страница
____
<body>
<?
$a=$_POST['p'];
echo "Значение $a";
?>
</body>
вторая страница
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Apay
Apay
сообщение 27.4.2010, 22:13; Ответить: Apay
Сообщение #10


а value где?
<input name="p" type="hidden" value="ку-ку!" />
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Интеграция спортивных данных API. Коэффициенты БК, Live результаты
15 yaroslav89 6871 8.4.2024, 17:17
автор: spoyer_ru
Открытая тема (нет новых ответов) Нужно ли закрывать ненужные страницы тегом noindex, follow?
8 noviktamw 2916 2.3.2024, 12:53
автор: toplinks
Открытая тема (нет новых ответов) ГОРЯЧИЕ FOREX|CRYPTO ЛИДЫ. БАЗЫ ДАННЫХ
[Чарджбек|Рекавери|Возврат]
9 Leado 3914 9.2.2024, 16:04
автор: baza0013
Открытая тема (нет новых ответов) Базы данных, различной тематики, выкладываем тут.
Делимся, обмениваемся, заказываем, парсим.
12 InfoObmen 15262 4.9.2022, 2:32
автор: Галецкая
Открытая тема (нет новых ответов) Сверстать страницы из figma
нужно сделать страницы для веб приложения
1 bluestorm 1297 7.6.2022, 18:11
автор: doharddocode


 



RSS Текстовая версия Сейчас: 25.4.2024, 12:03
Дизайн