PHP un seul boutton et 2 actions

alphap123 Messages postés 11 Statut Membre -  
alphap123 Messages postés 11 Statut Membre -
Bonjour,

Voila , je voudrais savoir si c'est possible de faire 2 actions à la fois à partir d'un seul boutton .

*Je voudrais afficher un résultat dans 2 pages par un seul click.

Voici , la chose qui est impossible :

<form method="post" name="envoi" action="page1.php" action="page2.php" >//Seul le premier action est prise en compte.


Je vous serais reconnaissants si vous me donner un petit coup de main .

A voir également:

6 réponses

beber005
 
non tu ne peux ouvrir qu'une seule page de cette façon
0
Mikoto94 Messages postés 8 Statut Membre
 
Je ne vois pas trop ce que tu veux faire.
Peux-tu expliquer un peu plus le but de la manoeuvre?
Sa nous aidera peut être à trouver un moyen de contourner ton problème.
0
Gremy87 Messages postés 360 Statut Membre 38
 
Bonjour,

comme mikoto je ne vois pas l'utilité...

si tu as 2 actions a faire, tu les fais a la suite dans la meme page, pourquoi 2?

tu ne peux pas afficher 2 pages en meme temps dans ton navigateur de toute façon ^^

(enfin si mais bon ca m'étonnerais que ce soit le cas)

dis nous en plus sur le but de ta manoeuvre
0
alphap123 Messages postés 11 Statut Membre 2
 
Merci à vous de me répondre ,

J'ai 2 colonne dans ma base sql "FICHE" : CODE et PRODUIT

Bon voila ,



// Voici ma premiere page qui contient une liste déroulante de sql des "CODE"

<form method="post" name="envoi" action="page1.php" >

<select name="champ">
<?php

connectMaBase();

$sql = 'SELECT 'Code' FROM 'fiche'';

$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());

while($data = mysql_fetch_array($req)){

echo '<option name="'.$data['Code'].'">'.$data['Code'].'</option>';
}

mysql_free_result ($req);

?>
<input value="OK" name="valider" type="submit" ;/>
</select></form>


<?php


if(isset($_POST['valider']))
{


$champ=$_POST['champ'];

}
?>



//Deuxieme page qui affiche le nom du produit


<form name="atou" /> [action="achat.php" ] ou [action="vente.php"]


<input type="text" name="re" value="

<?php
connectMaBase();

$champ=$_POST['champ'];


$sql = 'SELECT Produit FROM fiche WHERE Code=\''.$champ.'\'';


$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());



while($data = mysql_fetch_array($req)){

echo ''.$data['Produit'].'';


}

mysql_free_result ($req);

mysql_close ();


?>"/></form>




//j'ai 2 bouton dans cette 2 eme page , Achat et Vente ... :

<input name="acheter"
value="Achat" type="submit" >

<input name="vendre" value="Vente"
type="submit">



Je veux avoir la valeur dans la form input pour name "re" :

<?php
if(isset($_POST['acheter']))
{
$re=$_POST['re'];
}
?>


//Dans la troisieme page [achat.php] ou [vente.php]

<?php

echo ''.$re.'';

?>

la valeur $re ou produit ne s'affiche pas , on dit que c'est undefini , cette valeur m'est vraiment utile à être afficher pour continuer .
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Gremy87 Messages postés 360 Statut Membre 38
 
Bonjour,

alors voyons voir.

si j'ai bien compris ton $_POST['re'] est remplie et ne pose pas de probleme mais ce que tu veux savoir c'est si on a cliqué sur acheter ou vendre pour arriver a cette page, c'est ca?

si c'est la cas, c'est simple, le JavaScript sera ton ami.

voila comment je ferais:

-tu crée un champ caché
<input type="hidden" id="source" value=""


-et sur tes boutons tu fais:

<input type="button" value="Acheter" name="acheter" onClick="document.getElementById('source').value='achat';document.getElementById('ID DE TON FORMULAIRE').submit;" />

<input type="button" value="Vendre" name="vendre" onClick="document.getElementById('source').value='vente';document.getElementById('ID DE TON FORMULAIRE').submit;" />


tu aura donc comme action de ton formulaire 1 seule page et tu n'aura qu'a tester $_POST['source'] pour savoir sur quel bouton on a clické.

j'ai juste? =)

0
Gremy87 Messages postés 360 Statut Membre 38
 
sinon, désolé du double post mais ca m'est venu qu'après.

tu peux aussi modifier l'action du formulaire en JS via:

document.getElementById('ID DU FORM').action="page1.php"; document.getElementById('ID DU FORM').submit();


(d'ailleurs faut des parenthèses au submit, je l ai ai oublié au dessus)

mais je trouve cette méthode plus "barbare" que la précédente
0
alphap123 Messages postés 11 Statut Membre 2
 
Merci
0