Два разных назначения подать в одной форме - PullRequest
2 голосов
/ 15 октября 2010

У меня есть одна форма, которая должна представлять данные в две разные таблицы в одной БД. В прошлом я спрашивал, как отправить форму в две таблицы, но это невозможно.

Затем я пытаюсь отправить эту форму, используя две кнопки отправки с различным назначением. Не могли бы вы посоветовать отправить эту форму после нажатия на них?

Ответы [ 7 ]

3 голосов
/ 15 октября 2010

Javascript:

function button1click() {
  yourForm.action = "ajax1.php";
  yourForm.submit();
}

function button2click {
  yourForm.action = "ajax2.php";
  yourForm.submit();
}

HTML:

<form action='' method='post'>
  <input type='input' id='blah' name='blee' />
  <button type='button' onclick='button1click()'>Button 1</button>
  <button type='button' onclick='button2click()'>Button 2</button>
</form>
0 голосов
/ 12 марта 2015

Very Very Simple ...

Вы можете вставить в две таблицы только одну кнопку отправки ..

Пример:

<?php
if(isset($_POST['submit']))
{
  $value1 = (!empty($_POST['form_name_value1']))?$_POST['form_name_value1']:null;
  $value2 = (!empty($_POST['form_name_value2']))?$_POST['form_name_value2']:null;

  $str = "INSERT INTO table_name1(db_value1, db_value2)VALUES('$value1','$value2')
  $sql = mysql_query($str) or die(mysql_error());


  $str1 = "INSERT INTO table_name2(db_value1, db_value2)VALUES('$value1','$value2')
  $sql1 = mysql_query($str1) or die(mysql_error());

  if($str)
  {
  echo "Successful";
  }else{
  echo "Unsuccessful";
  }


  if($str1)
  {
  echo "Successful";
  }else{
  echo "Unsuccessful";
  }
}

Этот вопрос был задан 4много лет назад.Не время отвечать, теперь я знаю.Но все же отвечаю, чтобы помочь другим, ищущим ту же проблему.

Проголосуйте, если считаете это полезным.: D

0 голосов
/ 15 октября 2010

Чтобы подвести итог тому, что другие сказали выше,

  • Вы можете отправить в два разных места, используя javascript, чтобы изменить атрибут действия формы.Возможно, вы захотите использовать его, если два адресата не находятся на одном сервере.
  • Или вы можете отправить его только в один пункт назначения, помассировать ваши данные, а затем вставить в две таблицы, используя php.Это будет особенно выгодно, поскольку вам не нужно будет дважды санировать или проверять данные на стороне сервера.
0 голосов
/ 15 октября 2010
<?php
// Make a MySQL Connection
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("MYDB") or die(mysql_error());

// Insert a row of information into the table "example"
$sql="INSERT INTO example 
(name, age) VALUES('Timmy Mellowman', '23' ) ") 
or die(mysql_error());  

// Insert a row of information into the table "example"
$sql=mysql_query("INSERT INTO example1 
(name, age) VALUES('Timmy Mellowman', '23' ) ") 
or die(mysql_error());  

?>
0 голосов
/ 15 октября 2010

Вы можете вставить в разные таблицы, как это:

РЕДАКТИРОВАТЬ (новый код):

<?php
// Make a MySQL Connection
mysql_connect("localhost", "root", "root") or die(mysql_error());
mysql_select_db("double") or die(mysql_error());

// Insert a row of information into the table "example"
mysql_query("INSERT INTO example 
(name, age) VALUES('Timmy Mellowman', '23' ) ") 
or die(mysql_error());

// Insert a row of information into the table "example"
mysql_query("INSERT INTO example1 
(name, age) VALUES('Timmy Mellowman', '23' ) ") 
or die(mysql_error());  

?>

Надеюсь, что это отвечает на ваш вопрос, потому что игрушка не может иметь двойное назначение (я думаю), но этовставляет в две разные таблицы MySQL ...

Удачи

0 голосов
/ 15 октября 2010

почему дорогой?

if ($ _ POST ['submit']) {

$ sql1 = "вставить в таблицу 1";mysql_query ($ sql1);

$ sql2 = "вставить в таблицу 2";mysql_query ($ sql2);

}

Это должно работать ..

только одна кнопка отправки.OK!

0 голосов
/ 15 октября 2010

Вы можете сделать это разными способами. Тот факт, что данные представлены в одной форме, не означает, что они должны входить в одну таблицу. В основном вам нужно научиться писать некоторый код на стороне сервера, который анализирует входящие данные и размещает их там, где они должны быть.

Таким образом, самый простой способ - просто отправить свою форму, а затем на сервере сохранить данные в том месте, куда она должна идти.

Наличие 2 кнопок может быть неуклюжим, если только это не было разработано ...

...