Formulaire de modification

Eléphanteau du PHP | 11 Messages

18 août 2007, 12:01

salut tout le monde
Avec quelques exemlpe d'internet j'ai crée ces deux pages de formulaire de modification,
mais le problème c'est que je les veux dans une seul page. ça ce fait avec if (isset) je crois, mais je ne sais pas comment??


modifier1.php
<?php
  $connect = mysql_connect('localhost','root','')
                  or die ("erreur de connexion");
  mysql_select_db('final',$connect) 
              or die ("erreur de connexion base");
  $result = mysql_query("SELECT * FROM firewall"); 
?>

<html> 
  <head>
    <title>update</title>
  </head>
<body>
<p align="center"><strong><u>Modifier un équipement</u></strong></p>
  <table width="350" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee">
      <tr>
        <th>code</th><th>marque</th><th>nb_ports</th>
      </tr>
      <?php
        for ($i=0; $i < mysql_num_rows($result); ++$i)
        {
          echo '<tr>';
          mysql_data_seek($result, $i);
          $champs = mysql_fetch_array($result);
          for ($col=0; $col<4; ++$col)
            echo '<td>'.$champs[$col].'</td>';
          $vars= 'code='.$champs[0];       
          echo '<td><a href="modifier1.php?'.$vars.'">Modifier</a></td></tr>';
        } 
      ?>
    </table>
    

<?php 
  import_request_variables("G","recu_");
  $connect = mysql_connect('localhost','root','')
                  or die ("erreur de connexion");
  mysql_select_db('final',$connect) 
              or die ("erreur de connexion base");
$resultSelect = mysql_query("SELECT code, marque, nb_ports 
                               FROM firewall WHERE code=\"$recu_code\" "); 
$champs = mysql_fetch_object($resultSelect);
?>

<br>
<br>
<br>
<br>
    <p>
     Modification des renseignements sur le firewall :<br>

 
     <form method="post" action="modifier111.php">
<table width="360" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee">
      <tr>
        <th>code</th><th>marque</th><th>nb_ports</th>
      </tr>
      <tr>
	  <td width="300"><?php echo $recu_code; ?><input type="hidden" name="code" 
                       value="<?php echo $recu_code; ?>" ></td>
	  <td><input type="text" name="marque" 
                       value="<?php echo $champs->marque; ?>" ></td>
	  <td><input type="text" name="nb_ports"
                       value="<?php echo $champs->nb_ports; ?>" ></td>
	  </tr>
	  <tr>
	    <td height="50" colspan="10" align="center"><div align="center">
        <input type="submit" name="submit" value="Modifier cet equipement">
      </div></td> 
	  </tr>
</table>
     </form>
    </p>
  </body>
</html>
modifier111.php
    <?php
  import_request_variables("P","recu_");
  $connect = mysql_connect('localhost','root','')
                  or die ("erreur de connexion");
  mysql_select_db('final',$connect) 
              or die ("erreur de connexion base");
  @ $etat=mysql_query("UPDATE firewall SET code=\"$recu_code\",
                     marque=\"$recu_marque\",nb_ports=\"$recu_nb_ports\"
                     WHERE code=\"$recu_code\" ");
  if (!$etat)
    $messageErreur = mysql_errno().' : '.mysql_error();
  mysql_close();
?>
<html> 
  <head>
    <title>modification</title>
  </head>
  <body>
    <p>
      <?php
        if ($etat)
          echo 'modification reussie !';
        else
          echo 'echec de modification : '.$messageErreur;
      ?>
     </p>
  </body>
</html>
quelqu'un peux m'aider??
Merci beaucoup

ViPHP
ViPHP | 5924 Messages

18 août 2007, 12:56

Ta question est incompréhensible. Veuille bien la reformuler.
De surcroît, tes deux pages à fusionner ont toutes deux les balises <html> et <body>, il y aurait une grosse invalidité du résultat final qui contiendrait plusieurs balises html…

Eléphanteau du PHP | 11 Messages

18 août 2007, 12:59

ce que je veux dire c'est puisque la page modifier111.php va jouer le role de modification de la base et puis m'afficher un message pour la confirmation de modification

est ce que je ne peux pas effectuer la vérification et afficher le message de confirmation dans la meme 1er page modifier1.php sans redirection vers une autre page??

ViPHP
ViPHP | 5924 Messages

18 août 2007, 13:10

Oui, mais je ne vois pas où est-ce que tu veux insérer le fomulaire dans ton code. (au passage, tu as quelques problèmes d'optimisation dans ton code)

Eléphanteau du PHP | 11 Messages

18 août 2007, 13:12

le formulaire est déja inséré dans modifer1.php,
et maintenant j'aime pas la redirection vers une autre page pour faire la modification, je veux que tout soit fait dans la mem premire page :roll:

ViPHP
ViPHP | 5924 Messages

18 août 2007, 14:02

Ok, j'ai compris ce que tu veux.
Ce que tu vas faire, c'est déjà écrire tous les cas de figure lorsque tu exécutes ta page, et comment tu penses pouvoir détecter un cas ou l'autre. Et dans chaque cas de figure ce que tu dois faire. Ca ne te paraît peut être pas utile, mais tu vas voir, une fois que tu auras fait cela, le code sera limpide.