Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Отправка из нужной формы по условию
 
 автор: hars   (08.11.2006 в 17:48)   письмо автору
 
 

Задумка такая,отправлять данные из одной ,либо из двух форм сразу ,при условии что "нижняя" форма "ret2".
Вот только неполучается пока.Подскажите что не так делаю.
Я знаю что один тег </form>,для двух форм это неправильно,но если очень надо,то что-ж делать


<form action="JavaScript.php" name="ret1"id="r1">
<script language=JavaScript>
var sHTML='<input type="text" name="form_ret1" value="2222222222222"><input type="submit" value="ret1" >';
var fHTML='</form><BR>jujuj';
if(document.ret2){fHTML;}else{fHTML='';}
    r1.innerHTML = sHTML+fHTML;
</script> 
<span name="ret" id="r1"></span>    
<br>
<form action="JavaScript.php" name="ret2" id="r2">
<input type="text" name="form_ret2" value="3333333333333">
<input type="submit" value="ret2" >
</form>
<?
foreach($_GET as $a=>$b){echo "<br>".$a."=".$b;}
?>

   
 
 автор: Lelik   (08.11.2006 в 18:28)   письмо автору
 
   для: hars   (08.11.2006 в 17:48)
 

чего-то условие не совсем понятно :(

   
 
 автор: hars   (09.11.2006 в 08:19)   письмо автору
 
   для: Lelik   (08.11.2006 в 18:28)
 

Смысл такой,страница формируется из разных кусков кода.
На странице всегда две формы.
form1 form2 или form3 ,
нужно:
form1 form2 </form> - то есть на сервер отправятся данные из двух форм
form1 </form> form3 </form> - то есть на сервер отправятся данные из одной формы.
Возможно ли это сделать средствами JavaScript и если возможно подскажите как правильно пожалуйста.

Или как дописать к ссылке параметры из форм?

   
 
 автор: Lelik   (09.11.2006 в 11:23)   письмо автору
 
   для: hars   (09.11.2006 в 08:19)
 

в первой форме кнопку такую можно сделать

<script>
d = document;
function formSender(){
if(!d.forms['form2']) 
    d.forms['form1'].submit();
else
    d.forms['form1'].submit();
    d.forms['form2'].submit();
}
</script>
<form>
<input type="button" onClick="formSender()"/>
</form>


пробуй так, если чего доработаем

   
 
 автор: hars   (09.11.2006 в 14:05)   письмо автору
 
   для: Lelik   (09.11.2006 в 11:23)
 

Огромное спасибо,правда я тут другое надумал,но консультация нужна

<li ><a class="menu" href="JavaScript.php" id="lnk" 
       onclick="this.href+='?amount_all='+(document.getElementById('amount_all').value);">Zagruzka</a></li>
       <form action="JavaScript.php" method="post">
       <select class="field" id="amount_all" name="amount_all" >
                                        <option name="amount_all" value="1">1</option>
                                        <option name="amount_all" value="2">2</option>
                                        <option name="amount_all" value="3">3</option>
                                        <option name="amount_all" value="4">4</option>
                                        <option name="amount_all" value="5">5</option>
                                        <option name="amount_all" value="6">6</option>
                                        <option name="amount_all" value="7">7</option>
                                        <option name="amount_all" value="8">8</option>
                                        <option name="amount_all" value="9">9</option>
                                        <option name="amount_all" value="10">10</option>
                                    </select>
        <input type="submit" name="1" value="1">
        </form>

Я решил что проще всёже быдет дописать к ссылке нужные переменные,т.к. при формировании страницы иной раз вылазят неожиданности.
Так что вопрос изменился,учитывая что у меня там не один select а несколько,то громаднейший код в ссылке писать не сподручно,с синтаксисом у меня не очень :),подскажите как мне грамотно написать переменные и подставить их в ссылку,и причём остальные SELECTы и Chekboxы формируются JavaScriptom и значения в них выставляются,а мне надо ессно всё это собрать и на сервак для обработки скинуть

   
 
 автор: Lelik   (09.11.2006 в 16:22)   письмо автору
 
   для: hars   (09.11.2006 в 14:05)
 

сделай много проще - создай одну форму, а необходимые поля уже добавляй в нее, а приписывать к ссылке ничего не надо - когда данные передаются методом GET, то в адресной строке само приписывается
Пардон, передается методом POST, а зачем тогда в адресную строку добавлять текст?

   
 
 автор: hars   (09.11.2006 в 16:49)   письмо автору
 
   для: Lelik   (09.11.2006 в 16:22)
 

Всё дело в том что мне надо подправить сайтик один,а он написан на php+MySQL,но это всё фигня,а вот то что в нём организована система создания шаблонов страниц,вот это сложность.Чтобы разобраться во всём коде потребуется ОЧЕНЬ много времени,я разбираюсь потихоньку конечно,но это нелегко.
скину фрагмент страницы "сформированной",я там в начале кое-что стал добавлять :)

   
 
 автор: 12345   (09.11.2006 в 18:37)   письмо автору
 
   для: hars   (09.11.2006 в 16:49)
 

Что-то все забыли, что для успешной отправки запросов нужно, чтобы приёмник был в разные фреймы. Иначе 2-й submit отменит первый ещё до того, как он передастся.

   
 
 автор: hars   (10.11.2006 в 12:59)   письмо автору
 
   для: hars   (09.11.2006 в 16:49)
 

В итоге решил сделать подобным образом,может кому пригодиться,разработано из поста
http://www.softtime.ru/forum/read.php?id_forum=4&id_theme=26067&page=7

<script language="javascript"> 
function ss() { 
var g;
var a;
var f;
    for (i=0;i<10;i++){
        if( document.getElementById("a"+i) ){a=document.getElementById("a"+i).innerHTML = ("a"+i)+"text";}          
        if( document.getElementById("f"+i) ){f=document.getElementById("f"+i).innerHTML = ("f"+i)+"text";}     
    }
    g="?go="+a+"&g="+f+"&";
    return g; 

</script> 
<br>
<a href="#" onclick="this.href+=ss();">asdc</a> 
<form id="a1"></form>
<form id="f1"></form>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования