2010-10-15 9 views
2

J'ai un formulaire qui doit soumettre des données dans deux tables différentes dans la même DB. au passé, j'ai demandé comment soumettre la forme en deux tableaux, mais c'est impossible.Deux différentes destination de soumettre sous une forme

Ensuite, j'essaie de soumettre ce formulaire utiliser deux boutons d'envoi avec une destination différente. Pourriez-vous donner quelques conseils pour soumettre ce formulaire après les avoir cliqués?

Répondre

0

pourquoi cher?

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

$ sql1 = "insérer dans le tableau 1"; mysql_query ($ sql1);

$ sql2 = "insérer dans le tableau 2"; mysql_query ($ sql2);

}

Cela devrait fonctionner ..

un bouton Envoyer uniquement. D'ACCORD!

+0

je peux juste poster pour $ sql1.i poster ma requête. – klox

3

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

agk! JavaScript envahissant – Drew

0

Vous pouvez le faire de différentes façons. Ce n'est pas parce que les données sont sur un formulaire qu'il faut aller dans une table. Fondamentalement, vous devez apprendre à écrire du code côté serveur qui analyse les données entrantes et les met où il doit être.

Donc, le plus simple est de simplement soumettre votre formulaire, puis sur le serveur enregistrer les données là où il faut aller.

Avoir 2 boutons peuvent être maladroits, à moins thats comment il a été conçu ...

0

Vous pouvez insérer dans différentes tables comme ceci:

EDIT (nouveau code):

<?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()); 

?> 

Espérons que cela répond vous question parce jouet ne pouvez pas avoir deux destination (je pense) mais insère en deux différentes tables MySQL ...

Bonne chance

+0

il suffit de mentionner une table. – klox

+0

@klox désolé! Voilà! (oublié de le marquer comme code) – Trufa

+0

@trufa vous avez sélectionné deux DB. Je veux juste publier des données dans deux tables différentes, mais toujours dans la même DB – klox

0
<?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

Pour Somm arize ce que d'autres ont dit ci-dessus,

  • Vous pouvez soumettre à deux emplacements différents, en utilisant javascript pour modifier l'attribut d'action du formulaire. Vous pourriez vouloir l'utiliser si les deux destinations ne sont pas sur le même serveur.
  • Ou vous pouvez le soumettre à une destination seulement, masser vos données, puis les insérer dans deux tables en utilisant php. Ce sera particulièrement avantageux car vous n'aurez pas besoin de désinfecter ou de valider les données deux fois sur le serveur.
0

Très très simple ...

Vous pouvez insérer dans deux tables par un seul bouton de soumission ..

Exemple:

<?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"; 
    } 
} 

a posé cette question il y a 4 ans. Pas le temps de répondre maintenant je sais. Mais toujours répondre pour aider les autres à la recherche du même problème.

Votez si vous trouvez cela utile. : D