Отправить форму для различных действий в одной форме

0

У меня есть одна форма:

<form method="POST" action="index.php">

И 2 кнопки

<button name='button1'></button>
<button name='button2'></button>

То, что я хочу на клик button1 затем сформировать запись в index.php, но при щелчке button2 затем сформировать запись в index2.php.

ИЛИ

Нажмите на сообщение с двумя кнопками формы на index.php, после того, как массив index.php post добавит index2.php. Я не использую функцию GET!

  • 1
    Я совершенно уверен, что для этого вам нужно использовать Javascript, чтобы вносить изменения в DOM.
Теги:
forms
post

4 ответа

0
Лучший ответ

вы должны использовать это, используя jquery, как показано ниже

<form method="POST" id="main_form">
    <button name='button1' id="btn_1"></button>
    <button name='button2' id="btn_2"></button>
</form>

$("#btn_1").click(function(){
   $("form#main_form").attr("action","index.php");
   $("form#main_form").submit();
});

$("#btn_2").click(function(){
   $("form#main_form").attr("action","index2.php");
   $("form#main_form").submit();
});
1

удалите действие в своей форме. Это будет перенаправлено на index.php.

<form method="POST" >
<button name='button1' onclick=my();></button>
<button name='button2'onclick=my1();></button>
</form>
<script>
 function my() {
  window.location.href = 'index.php';
  }   
  function my1() {
  window.location.href = 'index2.php';
  }
  </script>
0

я использую

<script type="text/javascript">
    function doPreview()
    {
        form=document.getElementById('idOfForm');
        form.target='_blank';
        form.action='<?php echo Base_dir . 'email/create'; ?>';
        form.submit();
        form.action='#';
        form.target='';
    }
</script>

И используйте onclick в кнопке :)

Спасибо всем!

0

Я не уверен, почему вы отправляете форму на два d/t-адреса, но попробуйте сделать что-то вроде этого:

Добавьте эти две кнопки отправки в свою форму.

<input type = "submit"  name='submit1' value = "submit1" />
<input type = "submit"  name='submit2' value = "submit2" />

Поэтому, когда пользователь нажимает кнопку отправки один, переменная name=submit1 будет отправлена на сервер.

Когда пользователь нажимает кнопку отправки два, переменная name=submit2 будет отправлена на сервер.

Затем на стороне сервера вы можете сделать что-то вроде этого:

if(is_set($_POST['submit1']) && $_POST['submit1'] == 'submit1'){
   //code
}else if(is_set($_POST['submit2']) && $_POST['submit2'] == 'submit2'){
   //code
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню