Sos problem de modification de donnee dans un formulaire

cs_beloufa26 Messages postés 5 Date d'inscription samedi 2 décembre 2006 Statut Membre Dernière intervention 3 juillet 2011 - 15 juin 2011 à 15:46
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 - 15 juin 2011 à 17:09
bonjour
http://www.phpcs.com/infomsg.aspx?ajout= 1
j'ai un problem dans la modification
le problem il affiche la fiche modification mais au lieu de modifier il ajoute une autre line

svp aide moi a trouver la solution du problem du modification
je vous donne les trois script

merci d'avance

fichier forpage.php
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("bdd");

//Nombre d'élément par page
$messagesParPage=7;
//Nous récupérons le contenu de la requête dans $retour_total
$retour_total = mysql_query("SELECT COUNT(*) AS id_for FROM fournisseur");
//On range $retour_total sous la forme d'un tableau.
$donnees_total=mysql_fetch_assoc($retour_total); 
//On récupère le total pour le placer dans la variable $total. $total correspond au nombre total de commentaires
$total=$donnees_total['id_for']; 
echo 'Nombre de message : '.$total.'
';
//Nous allons maintenant compter le nombre de pages. On fait donc une simple division . 
//ceil &#8212;>Arrondit le chiffre au nombre supérieur si il n'est pas entier
$nombreDePages=ceil($total/$messagesParPage);
echo 'Nombre de page : '.$nombreDePages.'
';
// Si la variable $_GET['page'] existe...
if(isset($_GET['page'])) 
{
//$pageActuelle correspond au numéro de la page ou l'on se trouve. 
//intval &#8212;  Retourne la valeur numérique entière équivalente d'une variable 
     $pageActuelle=intval($_GET['page']);
     echo 'On se trouve sur la page numéro : '.$pageActuelle.'
';
// Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages...     
     if($pageActuelle>$nombreDePages) 
     {
          $pageActuelle=$nombreDePages;
     }
}
else // Sinon
{
     $pageActuelle=1; // La page actuelle est la n°1    
}
// On calcul la première entrée à lire
$premiereEntree=($pageActuelle-1)*$messagesParPage; 
echo 'Première entrée : '.$premiereEntree.'
';
//Si il n'y a rien
 if($total == 0){
 echo ' Aucun article pour le moment :(! 

';
 }
 else
 {
// La requête sql pour récupérer les articles de la page actuelle.
$retour_messages =mysql_query('SELECT * FROM fournisseur ORDER BY id_for ASC LIMIT '.$premiereEntree.', '.$messagesParPage.'');
//fin de la 1ere partie de la pagination
// début du tableau
{
    echo '<fieldset><legend>Tableau affichage</legend>'.\"\n\";
// première ligne on affiche les titres item article,item famille article dans 4 colonnes
echo '----
';
echo 'Code fournisseur, ';
echo 'Nom , ';
echo 'Adresse , ';
echo 'Téléphone, ';
echo 'Fax , ';
echo 'E-mail , ';
echo 'Site web , ';
echo 'Action, ';
echo ''.\"\n\";
// lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.
while($row=mysql_fetch_assoc($retour_messages))
{

echo '----
';
echo ''.$row['id_for'].', ';
echo ''.$row['n_for'].', ';
echo ''.$row['ad_for'].', ';
echo ''.$row['t_for'].', ';
echo ''.$row['fa_for'].', ';
echo ''.$row['e_for'].', ';
echo ''.$row['s_for'].', ';

echo '<form method="get" action="p.php">

</form>, ';

echo'['.$_SERVER['PHP_SELF'].'?page='.$precedent.' Précédent - ]';
}
if($suivant<=$nombreDePages){
echo '['.$_SERVER['PHP_SELF'].'?page='.$suivant.' Suivant]';
}
echo '
';
//Cette partie affiche une pagination complète de toutes les pages
for($i=1; $i<=$nombreDePages; $i++) //On fait notre boucle
{
     //On va faire notre condition
     if($i==$pageActuelle) //Si il s'agit de la page actuelle...
     {
         echo ' [ '.$i.' ] '; 
     }    
     else //Sinon...
     {
          echo ' ['.$_SERVER['PHP_SELF'].'?page='.$i.' '.$i.'] ';
     }
}
echo '
';
//fin pagination 2ieme partie
 mysql_close();

 }
?>






fichier m.php
<?php
$id_for=$_GET['id_for'];

// on se connecte à la base de données
mysql_connect("localhost","root","");
mysql_select_db("bdd") or die('Impossible de sélectionner une base 
de donnée. Assurez vous d\'avoir correctement remplit les données de 
connections.');

$requete=mysql_query("SELECT * FROM fournisseur where id_for='$id_for'")or die(mysql_error());

    While ($tableau=mysql_fetch_array($requete))
    {
     
      $id_for=$tableau['id_for'];
      $n_for=$tableau['n_for'];
      $ad_for=$tableau['ad_for'];
      $t_for=$tableau['t_for'];
      $fa_for=$tableau['fa_for'];
      $e_for=$tableau['e_for'];
      $s_for=$tableau['s_for'];
      
      
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />



<title>Page acceuil</title>

</head>
 


,

----

<li>Acceuil</li>
<li>About</li>
<li>Services</li>
<li>Solutions</li>
<li>Contact</li>
,
<SCRIPT LANGUAGE="JavaScript">document.write(Message);</SCRIPT>, <noscript></noscript>,

<SCRIPT language="JavaScript" title="G1SCRIPT"></SCRIPT>,
----
<?php
include ("menu1.php");
?>



<table class="table3" align="center">
----, Famille Fournisseur</td>
</td></tr>

<tr><td>
<form method="post" action="traitformodif.php">
<fieldset>
<legend>Fiche fournisseur</legend>
<label>Code fournisseur: </label>"/>
<label>Nom Fournisseur: </label>
"/>
<label> Adresse:</label>
"/>

<label> Tel: </label>
"/>
<label> Fax : </label>"/>
<label> E-mail: </label>
"/>

<label> Site Web du fournisseur: </label>
"/>

,
</fieldset>
</form>

</td>

</td></tr>

<tr><td>
<?php include_once("forpage.php"); ?>

</td>
</tr>
</td></tr></table>

</html>



<?php
}
?>


fichier traitformodif.php
<?php
  //connection au serveur
  $cnx = mysql_connect( "localhost", "root", "" ) ;
 
  //sélection de la base de données:
  $db  = mysql_select_db( "bdd" ) ;
 
  //récupération des valeurs des champs:
  //nom:
  $id_for=$_POST['id_for'];
  $n_for=$_POST['n_for'];
  $ad_for=$_POST['ad_for'];
  $t_for=$_POST['t_for'];
  $fa_for=$_POST['fa_for'];
  $e_for=$_POST['e_for'];
  $s_for=$_POST['s_for'];
  //récupération de l'identifiant de la personne:
 $id_for=$_POST['id_for'];
 
  //création de la requête SQL:
  $sql = "UPDATE fournisseur SET n_for='$n_for',ad_for='$ad_for',t_for= '$t_for',fa_for='$fa_for',
e_for='$e_for',e_for='$e_for' WHERE id_for = '$id_for' " ;
 
  //exécution de la requête SQL:
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
 
 
  //affichage des résultats, pour savoir si la modification a marchée:
  if($requete)
  {
   echo 'La modification à été effectué avec succès. Retour à l\'admi
nistration.

';
  }
  else
  {
    echo("La modification à échouée") ;
  
  }
?>

1 réponse

cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
15 juin 2011 à 17:09
bonjour
e_for='$e_for'
est ecrit 2 x dans ta requete
donc essaie

<?php
print_r($_POST);
?>


<?php

$cnx = mysql_connect( "localhost", "root", "" ) ;

//sélection de la base de données:
$db  = mysql_select_db( "bdd" ) ;

//récupération des valeurs des champs:
//nom:
$id_for=$_POST['id_for'];
$n_for=$_POST['n_for'];
$ad_for=$_POST['ad_for'];
$t_for=$_POST['t_for'];
$fa_for=$_POST['fa_for'];
$e_for=$_POST['e_for'];
$s_for=$_POST['s_for'];
//récupération de l'identifiant de la personne:
$id_for=$_POST['id_for'];

//création de la requête SQL:
echo '<hr>';
echo $sql = "UPDATE
fournisseur
SET
n_for='$n_for',
ad_for='$ad_for',
t_for= '$t_for',
fa_for='$fa_for',
e_for='$e_for'
WHERE
id_for = '$id_for'" ;//connection au serveur     e_for='$e_for',


//exécution de la requête SQL:
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;


//affichage des résultats, pour savoir si la modification a marchée:
if($requete)
{
echo 'La modification à été effectué avec succès. Retour à l\'admi
nistration.

';
}
else
{
echo("La modification à échouée") ;

}
?>



Bonne programmation !
0
Rejoignez-nous