Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> значение в поле hidden 
V
    Опции темы
Sniper
Дата 22.10.2007, 09:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



smile

Код

<input name="log" type="text" value="user">
<input name="hidden" type="hidden" id="hidden" value=<?php echo $_POST["log"]; ?> />


почему не передается значение?
если сделать:
Код

print $_POST['hidden'];


Если в value вписать просто строку, то всё в порядке.

Это сообщение отредактировал(а) Sniper - 22.10.2007, 09:23


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
MoLeX
Дата 22.10.2007, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



в место
Цитата(Sniper @  22.10.2007,  09:18 Найти цитируемый пост)
value=<?php echo $_POST["log"]; ?>

попробуй вот это
Код

value=<?=$_POST["log"]?>



--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
Sniper
Дата 22.10.2007, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



показывает на строчку с input и пишет 
Код

Undefined index: log in

почему log неопределён?  smile 
исправил 

ээ всёравно не работает.

Это сообщение отредактировал(а) Sniper - 22.10.2007, 09:48


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
Guedda
Дата 22.10.2007, 09:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

Репутация: 13
Всего: 78



Давай подумаем логически, как это должно произойти:
После посыла формы на сервер, он еще не знает, что ему передали $_POST['log'], потому что он только пеередается. Так откуда же взяться этому $_POST['log']-у, если на сервере его еще нет?
Тебе надо просто обработать запрос сначала на стороне клиента, и присвоить хиддену то значение, которое в log. Поэтому тебе здесь поможет JS.


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
Sniper
Дата 22.10.2007, 10:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



Guedda,  знал бы я ещё js ;-)

Код

<input id="log" name="log" type="text" value="user"> 

Код

<script type="text/javascript">
    function copy_var() {
        login=document.getElementById("log").value;
        return login;
    }
</script>

думаю что вот так. А как дальше?

Это сообщение отредактировал(а) Sniper - 22.10.2007, 10:28


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
flashaa
Дата 22.10.2007, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 796
Регистрация: 7.3.2006

Репутация: 19
Всего: 25



Сделать проверку на пустоту и все. Если переменная пуста, будет вставлено значение по умолчанию.
Код

$hidden = (empty($_POST['log'])) ? $hidden = ''по умолчанию" : $_POST['log'];
...
<input name="hidden" type="hidden" id="hidden" value=<?= $hidden ?> />

PM MAIL   Вверх
Sniper
Дата 22.10.2007, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



всегда вставляется "по умолчанию"


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
dsCode
Дата 22.10.2007, 10:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 565
Регистрация: 8.9.2007
Где: Saint-Petersburg

Репутация: нет
Всего: 26



flashaa, <input value="<?php print isset($_POST['log']) ? $_POST['log'] : 'default'  ?>">


--------------------
the .code inside
:my music
PM MAIL WWW ICQ Jabber   Вверх
flashaa
Дата 22.10.2007, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 796
Регистрация: 7.3.2006

Репутация: 19
Всего: 25



Цитата(dsCode @  22.10.2007,  10:58 Найти цитируемый пост)
flashaa, <input value="<?php print isset($_POST['log']) ? $_POST['log'] : 'default'  ?>">

Cпасибо.
Sniper, у меня есть подозрения, что твоя форма методом GET работает, приведи полный текст странички.
PM MAIL   Вверх
Sniper
Дата 22.10.2007, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



flashaa, 
вот я создал два файла
page1.php
Код

<form method="post" action="page2.php">
<input id="log" name="log" type="text" value="user">
<input type="submit" name="pos" value="Next" >
<input name="hidden" type="hidden" id="hidden" value="<?php print isset($_POST['log']) ? $_POST['log'] : 'default'  ?>" >
</form>

а вот второй 
page2.php 
Код

<?php
print $_POST['hidden'];
?>

показывается default

Это сообщение отредактировал(а) Sniper - 22.10.2007, 12:09


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
flashaa
Дата 22.10.2007, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 796
Регистрация: 7.3.2006

Репутация: 19
Всего: 25



Значит так:
1) Открываешь страницу первый раз. $_POST['hidden'] не существует, выводится default;
2) Жмешь submit, на cкрипт page2.php передаются следующие данные
log  => user
pos =>Next
hidden => default

Соответственно, print($_POST['hidden']) выведет 'default'.
Скрипт работает как и ожидается, а какой вывод ты хочешь получить?

PM MAIL   Вверх
Sniper
Дата 22.10.2007, 12:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



flashaa, пользователь вводит свой логин.
и этот логин при клике им на кнопку next передается на другую страницу(при помощи hidden кнопки).

Это сообщение отредактировал(а) Sniper - 22.10.2007, 12:44


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
flashaa
Дата 22.10.2007, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 796
Регистрация: 7.3.2006

Репутация: 19
Всего: 25



page1.php:
Код

<form method="post" action="page2.php">
<input id="log" name="log" type="text" value="user">
<input type="submit" name="pos" value="Next" >
<input name="hidden" type="hidden" id="hidden" value="<?php print isset($_POST['log']) ? $_POST['log'] : 'default'  ?>" >
</form>


page2.php
Код

<form method="post" action="page3.php">
<input type="submit" name="pos" value="Next" >
<input name="hidden" type="hidden" id="hidden" value="<?php print isset($_POST['log']) ? $_POST['log'] : 'default'  ?>" >
</form>


На второй странице в поле hidden будет значение log, которые пользователь ввел на первой странице.
PM MAIL   Вверх
Sniper
Дата 30.10.2007, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



Применив JavaScript сделал вот это:

Код

<form method="post" action="page1.php" name="logpas"> 
<input id="loginname" name="log" type="text">
<input name="hidden" type="hidden" id="hidden" value="">
<input type="submit" name="pos" onClick="userlogin();" value="Next">
</form>

Код

<script type="text/javascript">
    function userlogin(){
    var loginuser=document.getElementById("loginname").value;
    var val = document.logpas.hidden.value;
    val=loginuser;
    }
</script>

непонятно теперь, почему конструкция
echo $_POST['hidden']; на странице page1.php не работает?


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
capitan
Дата 30.10.2007, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 602
Регистрация: 27.2.2005
Где: Москва

Репутация: 9
Всего: 13



Sniper, 
Во первых, не используй в переменных зарезервированные слова. А то будешь полдня сидеть и искать почему у тебя код работает неправильно. Переименуй поле 
Код

<input name="hidden" type="hidden" id="hidden" value="">

например на 
Код

<input name="login_hidden" type="hidden" id="login_hidden" value="">


А во вторый, зачем так усложнять жизнь? Чем тебя не устраивает отправлять данные на эту же страницу?
И проверять нажатие.
Код

if (isset($_REQUEST['pos'])) {
    // тут всё это дело и обрабатываем
}


PM MAIL WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0568 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.