Pages HTML vers fonction PHP

Pages HTML vers fonction PHP - PHP - Programmation

Marsh Posté le 06-04-2006 à 16:56:35    

Bonjour à tous,
 
Je vous expose mon probleme,
 
J'ai une page HTML sur laquelle j'ai 3 boutons, il sont tout les trois en <form></form>.
 
Les 3 boutons pointent vers la meme page PHP pour accomplir une action du genre  <form action="action.php" method="post">
 
Chaque bouton à une action differente.
 
Sur ma page PHP j'ai créer mes fonctions,
 
Mon probleme, c'est que je ne sais pas comment faire pour indiquer à tel ou tel bouton de pointer vers la fonction qui lui est assigné.
 
Comme vous pouvez vous en doutez, pour l'instant tout mes boutons font la meme chose, alors qu'il ne devrait pas !
 
Help me please;

Reply

Marsh Posté le 06-04-2006 à 16:56:35   

Reply

Marsh Posté le 06-04-2006 à 17:01:59    

si tu as trois formulaire distinct , pouruoi ne pas les faire pointer vers 3 pages distincts ?  
 
sinon, dans chaque formulaire, tu peux rajouter un champ
<input type="hidden" name="queFaireLorsquOnCliqueSurCeBouton" value="ceQueTuVeux">
 
et apres, dans ton action.php , tu fais un  
switch($_GET['queFaireLorsquOnCliqueSurCeBouton']){
    case 'ceQueTuVeux':
        fonction1();
        break;
....      
 
}


---------------

Reply

Marsh Posté le 06-04-2006 à 17:16:28    

Il n'y aurait pas simplement moyen de préciser dans chaque formulaire de pointer vers tel ou tel fonction ?
 
PS: Je suis nul en prog alors dsl

Reply

Marsh Posté le 06-04-2006 à 17:18:02    

3 formulaires c'est mal.
tu as trois boutons, tu leur assignes à chaque le meme nom [pour les CSS et autres js je me demande si c'est propre de faire ca] mais une valeure differente.
et dans ta page php ensuite

Code :
  1. switch($_POST['bouton_name']){
  2. case 'val1'  :
  3. ...
  4. break;
  5. case 'val2' :
  6. ....
  7. break;
  8. case 'val3' :
  9. ....
  10. break;
  11. default :
  12. 'error :o'
  13. }

Reply

Marsh Posté le 06-04-2006 à 17:23:25    

akalaan a écrit :

Il n'y aurait pas simplement moyen de préciser dans chaque formulaire de pointer vers tel ou tel fonction ?
 
PS: Je suis nul en prog alors dsl


 
Pour chaque formulaire.
<form action=action.php?func=fonctionquivabien>
 
et dans ton action.php
$_GET['func']();


Message édité par Sebastien le 06-04-2006 à 17:23:57
Reply

Marsh Posté le 06-04-2006 à 17:24:59    

Tu peux faire ca de la facon suivante:
 
1 seul formulaire avec tes 3 boutons :
 

Code :
  1. <form action="page.php" method="post">
  2. <input type="submit" value="action 1" name="action">
  3. <input type="submit" value="action 2" name="action">
  4. <input type="submit" value="action 3" name="action">
  5. </form>


et dans page.php :

Code :
  1. <?php
  2.   $action = $_POST['action'];
  3.   switch ($action) {
  4.   case 'action 1':
  5.      fonction1();
  6.   break;
  7.   case 'action 2':
  8.      fonction2();
  9.   break;
  10.   case 'action 3':
  11.      fonction3();
  12.   break;
  13. ?>

Reply

Marsh Posté le 06-04-2006 à 17:26:03    

Grillé de 06min57 ca va encore :o

Reply

Marsh Posté le 06-04-2006 à 17:29:25    

Je suis dsl mais j'ai du mal...
 
J'y comprendrais mieux je pense en vous affichant les pages directement :
 
Dans la page HTML :  
 
<html>
<body>
 
<table width="100%">
<tr><td width="50%" valign="top">
<strong>Ajouter un commercial : </strong><br>
<form action="action_consult.php" method="post"><br>
<input type="submit" name=bouton value="Ajouter"><br>
<strong>requete simple</strong>
</form>
 
<br><br><br>
 
<tr><td width="50%" valign="top">
<strong>Affichage des commerciaux : </strong><br>
<form action="action_consult.php" method="post"><br>
<input type="submit"  name=bouton value="Afficher"><br>
<strong>requete simple</strong>
</form>
</table>
 
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
Aller vers : <a href = "index.html">index</a> ou <a href = "administration.html">administration</a>  
</body>
 
</html>
 
 
Dans la page PHP :  
 
<?php
 
$host = "localhost";
$user = "root";
$passwd = "";
$bdd = "projet";
$table = "commercial";
$sql = "SELECT * FROM `$table` ORDER BY `ID_commercial` ASC LIMIT 0, 30";
 
 
$connection =  mysql_connect($host, $user, $passwd);  
 if ($connection){
  echo "Connextion reussi";
 } else {  
  echo "pas de connection";}
 
echo "<br>";
echo "<br>";  
echo "<br>";    
 
$select_db =  mysql_select_db($bdd);  
 if ($select_db){
  echo "Connextion reussi à la base de donnée : ",$bdd;
 } else {  
  echo "pas de connection";}
   
echo "<br>";
echo "<br>";  
echo "<br>";
 
 
 
 $requete = mysql_query($sql, $connection);  
  if ($requete){
   echo "Connection reussi à la table : ",$table;
  } else {
   echo "pas de connection";}
 
 echo "<br>";
 echo "<br>";  
 echo "<br>";  
 
 
 $nombre = mysql_num_fields($requete);
   echo "<table width=90% border=0 align='center' cellpadding='2' cellspacing='2'>";
   echo "<tr bgcolor=#FFEFBF>";
  for ($i=0;$i<$nombre;$i++) {
   echo "<th>";
   echo mysql_field_name($requete,$i);
   echo "</th>";
   
  }
  echo "</tr>";
  echo "<tr>";
 while ($row = mysql_fetch_assoc($requete)) {
  $couleur = 1;
  foreach ($row as $elem) {
   if ($couleur == 1) {  
    echo "<td bgcolor='#A6C8C8'><div align='center'><font size='-1'>$elem</font></div></td>";
    $couleur = 2;    
  } else {
    echo "<td bgcolor='#B99CA3'><div align='center'><font size='-1'>$elem</font></div></td>";
    $couleur = 1;
   }
  }
  echo "</tr>";
 }
 echo "</table>";
 
?>
 
 
Pour l'instant je n'est qu'une fonction de défini.

Reply

Marsh Posté le 06-04-2006 à 17:31:45    

je vais essayé comme tu m'as dit Woutcha

Reply

Marsh Posté le 06-04-2006 à 17:34:59    

Sebastien a écrit :

Grillé de 06min57 ca va encore :o


 
Huhu vi j'ai vu ca  :(  
A charge de revanche  ;)  
 
 
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed