|
|
|
| дорого вермени суток. такой досктоточно глупый вопрос, но как его побороть я даже незнаю как. Подскажите можно ли при нажатии на кнопку скрыть форму1 и отобразить форму 2 и наоборот, есстественно сделать нужно с помощью PHP а не JS. | |
|
|
|
|
|
|
|
для: NoCash
(28.04.2010 в 16:24)
| | Конечно же, можно. Но это - только с перезагрузкой страницы, с отправкой формы. | |
|
|
|
|
|
|
|
для: DJ Paltus
(28.04.2010 в 16:25)
| | да да мне такое нужно) подскажите каким образом плиз | |
|
|
|
|
|
|
|
для: NoCash
(28.04.2010 в 16:27)
| | напрмиер, вот так:
<?php
$form1 = "<form name='f1' action=".$_SERVER['PHP_SELF']." method=post style='border:2px solid red;float:left'>
Форма1<br>
<input name='t1' type='text'>
<input type='submit' value='Send'>
<input name='this' type=hidden value=2>
</form>";
$form2 = "<form name='f2' action=".$_SERVER['PHP_SELF']." method=post style='border:2px solid green;float:left'>
Форма2<br>
<input name='t2' type='text'>
<input type='submit' value='Send'>
<input name='this' type=hidden value=1>
</form>";
if (isset($_POST['this']) && $_POST['this'] == 2) echo $form2; else echo $form1;
?>
|
| |
|
|
|
|
|
|
|
для: DJ Paltus
(28.04.2010 в 16:38)
| | А зачем под формы выделять доп.место в памяти (если только не используется, например, шаблонизатор)?
Можно через if () echo else echo =) | |
|
|
|
|
|
|
|
для: neadekvat
(28.04.2010 в 18:51)
| | Можно по-всякому, но здесь имхо тот случай, когда наглядность важнее. | |
|
|
|
|
|
|
|
для: DJ Paltus
(29.04.2010 в 10:17)
| | Это не тот случай.
Это категорически не тот случай.
PHP ни с формами, ни со стилями не работает.
PHP работает со строками. | |
|
|
|
|
|
|
|
для: Trianon
(29.04.2010 в 10:25)
| | Мы подходим к вопросу не так формально. Кнопка нажимается? Да. Форма скрывается-отображается? Да. Остальное - неважно, так как автора темы предложенный подход устроил. | |
|
|
|
|
|
|
|
для: DJ Paltus
(29.04.2010 в 10:34)
| | >Мы подходим к вопросу не так формально. Кнопка нажимается? Да. Форма скрывается-отображается? Да. Остальное - неважно, так как автора темы предложенный подход устроил.
Да. И в результате, какой-нибудь новайс, глянув на эту тему, будет всерьез считать, что php может скрывать и показывать формы. Большое человеческое спасибо :)
Для того чтобы кривой подход не устраивал автора, его не стоило предлагать.
Автор же - с такими подходами - еще с полгода не будет въезжать, где кончатется php и начинается клиентская сторона. А заодно и где вопросы задают по клиентской тематике. | |
|
|
|
|
|
|
|
для: Trianon
(29.04.2010 в 11:37)
| | Ну ок. Больше не буду. Пусть люди заходят, по полтора дня ждут ответа, а потом получают презрительное "вам не в этот форум". | |
|
|
|
|
|
|
|
для: DJ Paltus
(29.04.2010 в 11:55)
| | Напрасно вы считаете себя героем, ибо есть понятие "медвежьей услуги". | |
|
|
|
|
|
|
|
для: neadekvat
(29.04.2010 в 13:00)
| | Тогда вы сами не упускайте случая меня опередить. | |
|
|
|
|
|
|
|
для: DJ Paltus
(29.04.2010 в 13:09)
| | Наперегонки? Все смеетесь. | |
|
|
|
|
|
|
|
для: neadekvat
(29.04.2010 в 13:16)
| | Напротив. Оказывая подобного рода медведские услуги, я не готов вполне отдавать себе отчет в том, что это так и есть, пока не придете вы с Трианоном и не ткнете носом.
Если пожарные не приезжают вовремя, добрые соседи сами тушат электрический щит водой. | |
|
|
|
|
|
|
|
для: DJ Paltus
(29.04.2010 в 13:21)
| | Боюсь, не стоять мне пока что в одном ряду с Трианоном - меня также частенько приходится поправлять.
Однако же, если вы не уверены в том, что ваш вариант является хорошим, стоит об этом хотя бы сообщить автору, а не представлять, как единственный возможный вариант решения | |
|
|
|
|
|
|
|
для: neadekvat
(29.04.2010 в 16:07)
| | Перед тем, как дать ответ автору темы, я а) предупредил, что для решения в поставленных условиях нужна отправка формы и перезагрузка страницы и б) использовал языковую конструкцию "например, вот так", что делает обвинение в навязывании нехорошего варианта (двух вариантов) безосновательным. | |
|
|
|
|
|
|
|
для: NoCash
(28.04.2010 в 16:27)
| | А если речь идет именно о скрытии формы, то есть, чтобы в коде была, а не странице не отображалась, то жонглировать надо стилем:
<?php
$v1="";
$v2="";
if (isset($_POST['this']) && $_POST['this'] == 2) $v1 = "display:none"; else $v2 = "display:none";
$form1 = "<form name='f1' action=".$_SERVER['PHP_SELF']." method=post style='border:2px solid red;float:left; $v1'>
Форма1<br>
<input name='t1' type='text'>
<input type='submit' value='Send'>
<input name='this' type=hidden value=2>
</form>";
$form2 = "<form name='f2' action=".$_SERVER['PHP_SELF']." method=post style='border:2px solid green;float:left; $v2'>
Форма2<br>
<input name='t2' type='text'>
<input type='submit' value='Send'>
<input name='this' type=hidden value=1>
</form>";
echo $form1;
echo $form2;
?>
|
| |
|
|
|