[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: из переменной в value
Arcoslov
Здравствуйте.

помогите пожалуйста разобраться. у меня есть переменная $a="текст".
а так же есть форма <input name="input1" type="text" value="">
помогите пожалуйста подставить значение переменной в value инпута.

$a находится в отдельном файле, в 1.php
инпут находится в файле 2.php

я так понимаю что не передаётся переменная, если мы просто напишем:
<input name="input1" type="text" value="<? print($a) ?>"
?
странно, переменные же типа name от инпута ловятся везде, а как тут то быть?



Спустя 3 минуты (22.08.2009 - 21:14) Kuliev написал(а):
Arcoslov
Передавай переменную GETом или используй механизм сессий

Спустя 2 минуты, 12 секунд (22.08.2009 - 21:16) Arcoslov написал(а):
объясните пожалуйста оба варианта.
я в этих делах новичёк. читал про GET, прежде чем здесь написать, но не понял.

Спустя 9 минут, 55 секунд (22.08.2009 - 21:26) Kuliev написал(а):
Цитата (Arcoslov @ 22.08.2009 - 23:16)
объясните пожалуйста оба варианта.
я в этих делах новичёк. читал про GET, прежде чем здесь написать, но не понял.

1.php
PHP
echo "<a href=2.php?a=123>GO</a>";


2.php
PHP
if(isset($_GET['a']))
echo 
$_GET['a'];

else
echo 
"Переменная не существует";


1.php
PHP
session_start();

$a "Hello world";

$_SESSION['a'] = $a;

echo 
"<a href=2.php>GO</a>";


2.php
PHP
session_start();

echo 
$_SESSION['a'];



Спустя 13 часов, 49 минут, 23 секунды (23.08.2009 - 11:15) Arcoslov написал(а):
чего-то у меня не получается.

В общем мне надо сделать:
чтобы на первой странице у меня было текстовое поле (то есть форма с инпутом и кнопкой сабмит)
пользователь вводит туда что-то(текст какой-нибудь), нажимает кнопку и попадает на следующую страницу.
на следующей страницу он видит ссылку на предыдущую страницу, нажимает её и попадает обратно на стрнаницу с текстовым полем.
нужно сделать так, чтобы в текстовом поле осталось то, что он писал.
я так полагаю, что это надо сделать через переменную - чтобы при нажатии кнопки в первом окне, в переменную вбивался текст из инпута, а при переходе обратно - из переменной в value инпута как-то обратно сбрасывалось.

я написал в первом файле:

PHP
<form action="2.phpmethod="post" >
<
input type="text" name="text">
<
input type="submit" value="ok">
</
form>


Во втором файле:
PHP
<?
$a $_POST['text']
echo 
"$a";
echo 
"<a href=\"1.php\">Назад.</a>";


во втором файле я вижу, что переменная существует, выводится то что было написано на первой странице. Но, когда жму "назад", естественно в текстовом поле всё пусто. я пробовал в первом файле написать так, как видел в некоторых примерах в интернете, как я вам уже говорил:

PHP
<input name="text" type="text" value="<? print($a) ?>"

но, так ничего не получается. через echo "$a" тоже ничего не получается в value.

Первый предложенный вами способ, я полагаю, мне не подойдёт, потому что он описывает статичную переменную с определённым значением 123 а мне нужно чтобы там было то, что пользователь напишет.

На счёт второго способа я чёто не понимаю - выдаёт ошибки в обоих страницах - что-то типа

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at 2.php)

чё-то я ничего не понимаю, помогите пожалуйста sad.gif


Спустя 6 часов, 51 минута, 22 секунды (23.08.2009 - 18:07) Gradus написал(а):
И не будет,вы же не передаёте эту переменную назад
Первый файл
PHP
<? $a=$_POST['a']  ?>
<form action="2.php" method="post" >
<input type="text" name="text" <? if($a) echo "value=\"".$a."\"";  ?> >
<input type="su

Во втором
PHP
$a=$_POST['text']  ?>
<form action="1.php" method="post" >
<? if($a) echo "<input type=\"hidden\" name=\"a\" value=\"".$a."\">";  ?>
<input type="submi

Можно и методом get,но если пользователь длинное сообщение передаёт то не красиво будет

А ошибка у вас возникает из-за того что session_start(); должен стоять перед в самом начале страницы.Почитайте немного про сесии

Спустя 1 час, 47 минут, 55 секунд (23.08.2009 - 19:54) Guest написал(а):
При вызове из 1.php файл 2.php:
1.php?value=$a

В 2.php
<input name="input1" type="text" value="<?php echo $_REQUEST['value'] ?>"

Спустя 38 минут, 54 секунды (23.08.2009 - 20:33) FatCat написал(а):
Цитата (Arcoslov @ 22.08.2009 - 22:11)
я так понимаю что не передаётся переменная, если мы просто напишем:
<input name="input1" type="text" value="<? print($a) ?>"
?

Попробуйте
Код
<input name="input1" type="text" value="<? require "1.php"; print($a) ?>">

Спустя 1 день, 44 минуты, 19 секунд (24.08.2009 - 21:18) Arcoslov написал(а):
Gradus , спасибо большое, ваш метод у меня работает!
Но мне нужно сделать так, чтобы при возвращении с файла 2 в файл 1 юзер не на кнопку нажимал, а на ссылку.

Спасибо и остальным отписавшимся, Guest и FatCat, то что вы написали я ещё не попробовал, в ближайшее время отпишусь.
Быстрый ответ:

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