le 27/06/2011 à 16:29
problem avec update
bonjour
j'ai un problem de modification des enregistrement veuillez svp m'aider a trouver le problem
et surtout essai avant de me corriger le script veuillez simuler chez vous comme ca on sera sure parceque c fait 3 mois que je pose se problem sur les forum et franchement tous les réponse sont éroner merci d'avance
je vous envoie la base de donnee a creer
base de donnee (bdd)
creer la table famillearticle
Structure de la table `famillearticle`
--
CREATE TABLE IF NOT EXISTS `famillearticle` (
`id_fart` varchar(2) NOT NULL,
`li_art` varchar(20) NOT NULL,
PRIMARY KEY (`id_fart`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Contenu de la table `famillearticle`
--
INSERT INTO `famillearticle` (`id_fart`, `li_art`) VALUES
('0', 'ESZEE FFFFF'),
('cx', 'consommable xerox'),
('cd', 'consommable duplo'),
('dd', 'dfdfd'),
('xf', 'gfgfgf'),
('gf', 'gfg'),
('sd', 'sss'),
('xv', 'vcxvcx');
-- --------------------------------------------------------
le premier fichier: famart.php
deuxième fichier fichfamart.php
fichier traitfaart.php
troisième fichier: forpage.php
fichier modifamart.php
fichier : modification3.php
merci d'avance
j'ai un problem de modification des enregistrement veuillez svp m'aider a trouver le problem
et surtout essai avant de me corriger le script veuillez simuler chez vous comme ca on sera sure parceque c fait 3 mois que je pose se problem sur les forum et franchement tous les réponse sont éroner merci d'avance
je vous envoie la base de donnee a creer
base de donnee (bdd)
creer la table famillearticle
Structure de la table `famillearticle`
--
CREATE TABLE IF NOT EXISTS `famillearticle` (
`id_fart` varchar(2) NOT NULL,
`li_art` varchar(20) NOT NULL,
PRIMARY KEY (`id_fart`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Contenu de la table `famillearticle`
--
INSERT INTO `famillearticle` (`id_fart`, `li_art`) VALUES
('0', 'ESZEE FFFFF'),
('cx', 'consommable xerox'),
('cd', 'consommable duplo'),
('dd', 'dfdfd'),
('xf', 'gfgfgf'),
('gf', 'gfg'),
('sd', 'sss'),
('xv', 'vcxvcx');
-- --------------------------------------------------------
le premier fichier: famart.php
- <table border="1"; cellpadding=7px; cellspacing=4px; bgcolor="#777777" align="center" width="100%">
- <tr><td>
- <table class="table3" align="center">
- <tr>
- <td>Famille Article</td></tr></table></td></tr>
- <tr><td>
- <table class="table4" align="center"><tr><td class="t">
- <?php include_once("fichfamart.php"); ?></td></tr></table>
- </td></tr>
- <tr><td>
- <table class="table4" align="center"><tr><td>
- <?php include_once("forpage.php"); ?></td></tr></table>
- </td>
- </tr></table>
- </td>
- </td></tr></table>
- </body>
- </html>
deuxième fichier fichfamart.php
- <form method="post" action="traitfaart.php" enctype="multipart/form-data" onsubmit="return(valider(this));">
- <fieldset>
- <legend><big><b>Fiche famille article</b></big></legend></br></br>
- <label> Code de famille d'article : </label><input type="text" name="id_fart" maxlength="2" />
- <label> Libellee de famille d'article : </label>
- <input type="text" name="li_art" maxlength="20"/><br/>
- <input type="submit" value="Ajouter"/><input type="reset" value="Annuler"></td>
- </fieldset>
- </form>
- <form method="post" action="traitfaart.php" enctype="multipart/form-data" onsubmit="return(valider(this));">
- <fieldset>
- <legend><big><b>Fiche famille article</b></big></legend></br></br>
- <label> Code de famille d'article : </label><input type="text" name="id_fart" maxlength="2" />
- <label> Libellee de famille d'article : </label>
- <input type="text" name="li_art" maxlength="20"/><br/>
- <input type="submit" value="Ajouter"/><input type="reset" value="Annuler"></td>
- </fieldset>
- </form>
fichier traitfaart.php
- <?php
- if (isset($_POST['id_fart']) AND isset($_POST['li_art']))
- {
- $id_fart=$_POST['id_fart'];
- $li_art=$_POST['li_art'];
- mysql_connect("localhost", "root", "");
- mysql_select_db("bdd");
- mysql_query("INSERT INTO famillearticle VALUES ('$id_fart', '$li_art') ");
- require_once('famart.php');
- }
- ?>
troisième 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.'<br/>';
- //Nous allons maintenant compter le nombre de pages. On fait donc une simple division .
- //ceil —>Arrondit le chiffre au nombre supérieur si il n'est pas entier
- $nombreDePages=ceil($total/$messagesParPage);
- echo 'Nombre de page : '.$nombreDePages.'<br/>';
- // Si la variable $_GET['page'] existe...
- if(isset($_GET['page']))
- {
- //$pageActuelle correspond au numéro de la page ou l'on se trouve.
- //intval — 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.'<br/>';
- // 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.'<br/>';
- //Si il n'y a rien
- if($total == 0){
- echo '<p><strong>Aucun article pour le moment :(!</strong></p>';
- }
- 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><big class="t"><b>Tableau affichage</b></big></legend><table bgcolor="#999999" align="center">'."\n";
- // première ligne on affiche les titres item article,item famille article dans 4 colonnes
- echo '<tr>';
- echo '<td bgcolor="#7FAFC3"><b><u>Code fournisseur</u></b></td>';
- echo '<td bgcolor="#7FAFC3"><b><u>Nom </u></b></td>';
- echo '<td bgcolor="#7FAFC3"><b><u>Adresse </u></b></td>';
- echo '<td bgcolor="#7FAFC3"><b><u>Téléphone</u></b></td>';
- echo '<td bgcolor="#7FAFC3"><b><u>Fax </u></b></td>';
- echo '<td bgcolor="#7FAFC3"><b><u>E-mail </u></b></td>';
- echo '<td bgcolor="#7FAFC3"><b><u>Site web </u></b></td>';
- echo '<td colspan="2" align="center" bgcolor="#7FAFC3"><b><u>Action</u></b></td>';
- echo '</tr>'."\n";
- // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.
- while($row=mysql_fetch_assoc($retour_messages))
- {
- echo '<tr>';
- echo '<td bgcolor="#CCCCCC">'.$row['id_for'].'</td>';
- echo '<td bgcolor="#CCCCCC">'.$row['n_for'].'</td>';
- echo '<td bgcolor="#CCCCCC">'.$row['ad_for'].'</td>';
- echo '<td bgcolor="#CCCCCC">'.$row['t_for'].'</td>';
- echo '<td bgcolor="#CCCCCC">'.$row['fa_for'].'</td>';
- echo '<td bgcolor="#CCCCCC">'.$row['e_for'].'</td>';
- echo '<td bgcolor="#CCCCCC">'.$row['s_for'].'</td>';
- echo '<td><form method="get" action="p.php">
- <input type="hidden" name="id" value="'.$row['id_for'].'" />
- <input type ="submit" value="supprimer" />
- </form></td>';
- echo'<td><a href="modifamart.php?id_for='.$row["id_for"].'">Modifier</a></td>';
- echo '</tr></fieldset>'."\n";
- }
- echo '</table>'."\n";
- }
- //pagination 2ieme partie
- //Pour l'affichage, on centre la liste des pages
- echo '<div align="center">Page : ';
- //Cette partie affiche uniquement Suivant et Précédent
- $suivant=$pageActuelle+1;
- $precedent=$pageActuelle-1;
- if($precedent>=1){
- echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.$precedent.'">Précédent - </a>';
- }
- if($suivant<=$nombreDePages){
- echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.$suivant.'">Suivant</a>';
- }
- echo '<br/>';
- //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 ' <a href="'.$_SERVER['PHP_SELF'].'?page='.$i.'">'.$i.'</a> ';
- }
- }
- echo '</div>';
- //fin pagination 2ieme partie
- mysql_close();
- }
- ?>
fichier modifamart.php
- <?php
- if(isset($_GET['id'])){
- $id_fart=$_GET['id'];
- //connection au serveur:
- $cnx = mysql_connect( "localhost", "root", "" ) ;
- //sélection de la base de données:
- $db = mysql_select_db( "bdd" ) ;
- //récupération de la variable d'URL,
- //qui va nous permettre de savoir quel enregistrement modifier
- //requête SQL:
- $sql = "SELECT *
- FROM famillearticle
- WHERE id_fart = ".$id_fart ;
- //exécution de la requête:
- $requete = mysql_query( $sql, $cnx ) ;
- //affichage des données:
- if($result = mysql_fetch_object( $requete ));
- {
- ?>
- <form name="insertion" action="modification3.php" method="POST">
- <input type="hidden" name="id" value="<?php echo($id_fart) ;?>">
- <table border="0" align="center" cellspacing="2" cellpadding="2">
- <tr align="center">
- <td>code famille article</td>
- <td><input type="text" name="id_fart" value="<?php echo($result->id_fart) ;?>"></td>
- </tr>
- <tr align="center">
- <td>designation famille article</td>
- <td><input type="text" name="li_art" value="<?php echo($result->li_art) ;?>"></td>
- </tr>
- <tr align="center">
- <td colspan="2"><input type="submit" value="modifier"></td>
- </tr>
- </table>
- </form>
- <?php
- }//fin if
- }
- ?>
fichier : modification3.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_fart = $_POST["id_fart"] ;
- //prenom:
- $li_art = $_POST["li_art"] ;
- //récupération de l'identifiant de la personne:
- $id_fart = $_POST["id_fart"] ;
- //création de la requête SQL:
- $sql = "UPDATE famillearticle
- SET id_fart = '$id_fart',
- li_art = '$li_art',
- WHERE id_fart = '$id_fart' " ;
- //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é correctement effectuée") ;
- }
- else
- {
- echo("La modification à échouée") ;
- }
- ?>
merci d'avance