Problème mise à jour BDD et affichage résultat après UPDATE
3 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
- hx.jonathan
- WRInaute occasionnel

- Messages: 115
- Inscription: Mer Mar 02, 2005 17:42
Problème mise à jour BDD et affichage résultat après UPDATE
Bonjour,
Cela fait plus d'une semaine que je cherche la solution à mon problème.
Voici mon problème. J'ai une page qui sert à afficher des enregistrements de ma bdd dans un formulaire html, et une autre page qui sert à faire un UPDATE de ces données.
La première page (avenir.php) commence avec une liste déroulante html qui me permet d'afficher différents listes d'enregistrements. En fonction de ce choix, je préremplis mon formulaire html. En dessous de cette première page j'ai un bouton qui me permet d'enregistrer les modifications apportées. Ce bouton renvoi vers ma deuxième page (check3.php) qui est en gros une reuqete SQL d'UPDATE.
PROBLEME :
Quand je clique sur le bouton "enregistrer les modifications" qui se situe en bas de "avenir.php", il fait appel à check3.php pour faire l'UPDATE sql et me redirige vers "avenir.php" pour actualiser les infos.
C'est là qu'est mon problème. En fait, il n'enregistre pas les choses comme il faut. Enfin, parfois oui, parfois non. Et parfois il me recopie plusieurs fois les mêmes enregistrements.. Bref, je ne comprends pas du tout ce qu'il se passe.
Voici mes deux pages:
"avenir.php":
"check3.php" :
En espérant que quelqu'un puisse prendre mon problème au sérieux. J'en peux plus de pas avancer.
D'avance merci à tous.
Cela fait plus d'une semaine que je cherche la solution à mon problème.
Voici mon problème. J'ai une page qui sert à afficher des enregistrements de ma bdd dans un formulaire html, et une autre page qui sert à faire un UPDATE de ces données.
La première page (avenir.php) commence avec une liste déroulante html qui me permet d'afficher différents listes d'enregistrements. En fonction de ce choix, je préremplis mon formulaire html. En dessous de cette première page j'ai un bouton qui me permet d'enregistrer les modifications apportées. Ce bouton renvoi vers ma deuxième page (check3.php) qui est en gros une reuqete SQL d'UPDATE.
PROBLEME :
Quand je clique sur le bouton "enregistrer les modifications" qui se situe en bas de "avenir.php", il fait appel à check3.php pour faire l'UPDATE sql et me redirige vers "avenir.php" pour actualiser les infos.
C'est là qu'est mon problème. En fait, il n'enregistre pas les choses comme il faut. Enfin, parfois oui, parfois non. Et parfois il me recopie plusieurs fois les mêmes enregistrements.. Bref, je ne comprends pas du tout ce qu'il se passe.
Voici mes deux pages:
"avenir.php":
- Code: Tout sélectionner
<?php
include_once 'fonctions.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="styles_club.css" />
</head>
<body>
<form method="post">
<select name="mon_champ">
<option value="Janvier/Fevrier">Janvier/Fevrier</option>
<option value="Fevrier/Mars">Fevrier/Mars</option>
<option value="Mars/Avril">Mars/Avril</option>
</select>
<input type="submit" value="OK"/>
</form>
<?php
$mon_champ = isset($_POST['mon_champ']) ? $_POST['mon_champ'] : '';
connexion_DB('bd_club');
switch($mon_champ) {
case 'Janvier/Fevrier':
$res2 = mysql_query('SELECT * FROM activites WHERE couple_mois=\'Janvier/Fevrier\'');
break;
case 'Fevrier/Mars':
$res2 = mysql_query('SELECT * FROM activites WHERE couple_mois=\'Fevrier/Mars\'');
break;
case 'Mars/Avril':
$res2 = mysql_query('SELECT * FROM activites WHERE couple_mois=\'Mars/Avril\'');
break;
default:
$res2 = mysql_query('SELECT * FROM activites WHERE couple_mois=\'Janvier/Fevrier\'');
}
echo "bonjour";
// REQUETE SQL
echo '<form method="post" action=check3.php>';
//boucle
$cpt=1;
while($row = mysql_fetch_array($res2))
{
$ID_ACTIV=$row['ID_ACTIV'];
$annee=$row['annee'];
$couple=$row['couple_mois'];
//affichage enregistrements
echo "<input type='text' name='idact[$cpt]' size='1' value='$ID_ACTIV'></input>";
echo "<input type='text' name= 'annee[$cpt]' size='5' value='$annee'></input>";
echo "<input type='text' name= 'couple[$cpt]' size='15' value='$couple'></input>";
$cpt++;
echo "<br />";
}
echo "<input type='hidden' name='cpt' size='1' value='$cpt'></input>";// pour pouvoir récupérer la valeur de cpt pour savoir le nbr d'itérations.
echo "<br />";
echo '<div align="center"><input type="submit" name="envoie" VALUE="Enregistrer les modifications"></div>';
echo '</form>';
echo $cpt;
mysql_close();
?>
</body>
</html>
"check3.php" :
- Code: Tout sélectionner
<?php
include_once 'fonctions.php';
connexion_DB('bd_club');
for($i=1; $i<$_POST['cpt'];$i++){
$sql = "UPDATE activites SET annee = '".$_POST['annee'][$i]."',couple_mois = '".$_POST['couple'][$i]."' WHERE ID_ACTIV = '$i'";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
echo "<br/>".$sql;
echo $i;
}
header("Location:http://127.0.0.1/absence/index.php?page=05");
?>
En espérant que quelqu'un puisse prendre mon problème au sérieux. J'en peux plus de pas avancer.
D'avance merci à tous.
C'est pas là le prob ?
Remplacer:
par
Remplacer:
- Code: Tout sélectionner
$sql = "UPDATE activites SET annee = '".$_POST['annee'][$i]."',couple_mois = '".$_POST['couple'][$i]."' WHERE ID_ACTIV = '$i'";
par
- Code: Tout sélectionner
$sql = "UPDATE activites SET annee = '".$_POST['annee'][$i]."',couple_mois = '".$_POST['couple'][$i]."' WHERE ID_ACTIV = '".$_POST['idact'][$i]."'";
- hx.jonathan
- WRInaute occasionnel

- Messages: 115
- Inscription: Mer Mar 02, 2005 17:42
Salut,
Merci beaucoup. Tu as résolu mon problème. Excellent. C'était trop bête !!!
Encore merci.
Merci beaucoup. Tu as résolu mon problème. Excellent. C'était trop bête !!!
Encore merci.
3 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Passage à l'heure d'été/hiver sur un forum phpBB
- Google Update Jagger : étape 2 sur 3
- Historique des "Google Update"
- Des changements dans l'algorithme de Google ? (22 février 2007)
- Google Labs lance Google Alternate Views
- Lancement de Mozbot
- La mise à jour du mois de juillet arrive...
- Nouvelle version de notre FAQ
- Sites bénéficiant de plusieurs liens supplémentaires (SiteLinks) dans les résultats Google
- Afficher le PageRank en entier dans Firefox (barre d'outils Google)
Consultez la description détaillée des produits ou services de Google suivants : Google SiteLinks, Google Whack, Google SearchMash
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités



le forum