От една форма в друга ?

dakata__92

Super Moderator
Как да направя така , че когато данните се въведат в една форма от този вид която изпълнява action="1.php" , дя се въвеждат и във скрито поле на друга форма която изпълнява action="2.php" ? Разбирасе след което другата форма автоматично да submit-нe получената информация от първата форма и да изпълни action="2.php" .
Код:
<form method="post" action="1.php">
<input name="ime" type="text">
<input name="vraska" type="text">
<input type="submit" value="HELP">
</form>
<form method="post" action="2.php">
<input name="ime2" type="text" style="visibility:hidden;">
<input name="vraska2" type="text" style="visibility:hidden;">
<input type="submit" value="HELP2" style="visibility:hidden;">
</form>
Примерно го давам Form 1 TEXT1(Daniel) - Form 2 TEXT2(Daniel / hidden) .
Може и когато се въведът полетата без да се натиска submit-a с име HELP след въвеждане на минимален брой синволи в текст полетата да сюбмитне бутон HELP2 сам .
 
Не разбрах точно к'во се опитваш да направиш. Искаш да направиш нещо като попълване на стъпки ли ? Т.е. Стъпка 1, Стъпка 2, Стъпка 3, след като се попълни първата форма отиваш на втора, ако не си я попълнил не можеш да продължиш на пред, така ли?
 
Каква е целта ти? Защо изобщо ги правиш в 2 форми? Това може да се изпълни само със 1 скрипт...
 
Правя го със 2 форми защото няма как да се изпълни с 1 скрипт ! Принципно aciona="" се изпълнява когато се натисне бутона сюбмит . А аз желая с едни и същи данни да изпълня 2 напълно различни action действия в дадена форма . Затова искам като се въведат данните в едната форма да се показват във другата и да се изпращат автоматично без да има нужда да се натиска нищо по нея (затова я правя и hidden). Примерно на нея ще се прави проверка от рода на:
Код:
 if($_POST['submit'] != NULL) {

}
Тук някъде срещах подобна форма в която като зададеш текст в едната се показва и в друга , но не и помня името . Както и да е незнам дали ще се получи това . Можеше примерно да добавя още един бутон във формата който да изпълнява друг JS , ала ползвам php и на всичкото отгове actiona който трябва да изпълнява втората функция е съвсем различен от този на първата форма . Мога да го направя по-просто , но искам да избегна въвеждането на едни и същи данни двапати от потребителя .
 
Няма ли да е по лесно да изпълнява всичко от един php файл :)
 
Не се получава това което искам а и на първия action на форма 1 използвам JS функции и условия да го наречем при което се изпълнява тя . Трябва ми начин когато въведа във форма 1 action 1 текст да излиза във hidden форма 2 с action 2 и да submit- не автоматично . Имаше някаде из форума за попълване от една форма в друга , но незнам нито как се казва нито дали ще проработи както искам . Затова и питам как да го направя ? :?
 
Кода е дълъг и общо казано изпълнява проверка за празни полета след което въвежда две функции които съм задал после взима бутона от формата по ID и submit-ва като изпраща на е-майла ми нужната информация която е въвел във формата от функциите и потребителя , и изпълнява actiona на формата . В JS мога да въведа да изпълнява втора форма , но нали Ви казах , че искам да избегна въвеждането на една и съща информация два пъти от потребителя . В една форма няма как да се изпълняват два различни actiona до колкото съм запознат ! Има ли начин от една форма текста да се въведе в друга форма или не ?
 
Малко объркано обясняваш без конкретния казус!
Ако правилно съм разбрал ми се струва, че по-лесно би ти било да работиш по следния начин:
Попълва се форма 1, в която слагаш onsubmit="return fillform2()"
Във fillform2 си попълваш скрито полетата и си изчисляваш условията, например:
if (document.getElementById('textform1')) {
document.getElementById('textform2').value=document.getElementById('textform1').value
.
.
.
return true;

Не съм убеден на къде ще отиде браузъра обаче и може да се наложи да сложиш втората форма в iframе, за да останеш в текущата страница или да използваш някакъв ajax компонент или jquery.

Естествено вместо на onsubmit можеш да сложиш fillform2 на onchange/onkeypress на полето textform1 и тогава ще се стартира при всеки символ (точно както го искаш), но както ти е по-удачно за конкретната имплементация.
 
Обмислях с onsubmit команда , но не се получава както желая ! За пренасочването на браузера мога и с target="_blank" да го изведа в нов прозорец , но пак казвам няма ли някое скриптче което при попълване на текст полета в една форма да ги въвежда в друга ? При положение , че това го има спестявам излишни 2 прозореца които да излизат на нов таб и още едно въвеждане на информация от потребителя !
 
Естествено вместо на onsubmit можеш да сложиш fillform2 на onchange/onkeypress на полето textform1 и тогава ще се стартира при всеки символ (точно както го искаш), но както ти е по-удачно за конкретната имплементация.

и естествен в зависимост от логиката във fillform2 можеш да сложиш form2.submit(), но по добре я направи тази форма в скрит iframe,за да останеш в текущата страница.
 
Код:
document.getElementById("button").innerHTML = "<input type='submit' name='submit' />";
document.send.elements['submit'].click();
Така въвеждам бутона на първата форма и го кликам в JS , след приключване на условията които съм задал ! Eто как ми изглежда и формата !
Код:
<form name="send" action="mail.php" method="post" >
Име : <input type="text" name="name" />
Е-майл за връзка: <input type="text" name="email" />
<span id="button" style="visibility:hidden></span>
</form>
Как да въведа тази команда която казваш ! При положение , че условията са едни и същи .
Код:
document.getElementById("button").innerHTML = "<input type='submit' name='submit' />";
document.send.elements['submit'].click();

document.getElementById("button2").innerHTML = "<input type='submit' name='submit2' />";
document.send.elements['submit2'].click();
Код:
<form name="send2" action="see.php" method="post" >
<input type="text" name="name2" style="visibility:hidden;" />
<input type="text" name="email2" style="visibility:hidden;" />
<span id="button2" style="visibility:hidden></span>
</form>

Така мога да го направя с проверка и за тези полета дали са празни , но се въвежда двапъти една и съща информация ! Искам както във втория пример съм въвел hidden полета да взимат текста от полета с име NAME и ЕMAIL и да ги поставя в текст полета с име NAME2 и EMAIL2 и вече аз ще си го нагода къде да "ходи" браузера .
 
Няма как и да изпрата информацията чрез проверка за натиснат бутон понеже се явява бутона SUBMIT , че го въвеждам в JS посредством <span id="button"></span> и му задавам стойността <input name="submit" type="submit"/>.
Не се получава по този начин като пример го давам :
PHP:
<?php
if(isset($_POST['submit'])) 
{
$pole = $_POST['pole']; 
echo $pole;
} else {
?>
<form method="post">
Поле : <input type="text" name="pole">
<input type="submit" value="submit" name="submit">
</form>
JS трябва да си изпълни условията и да въведа кода след тази функция :
[js]document.getElementById("button").innerHTML = "<input type='submit' name='submit' />";
document.send.elements['submit'].click();[/js]
, като се имав предвид , че се изпълнява на форма 1 action 1 с този скрипт . Пробвах по указания по-напред в темата начин с Filform2 или нещ подобно беше , но не се получава :(
 

Back
Горе