Problème d'UPDATE
Résolu
cinefever
Messages postés
68
Date d'inscription
Statut
Membre
Dernière intervention
-
cinefever Messages postés 68 Date d'inscription Statut Membre Dernière intervention -
cinefever Messages postés 68 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je dois surement avoir un souci avec mon code car les modifications effectuées depuis ma reqûete ne sont pas enregistrées sur ma base...
Voici le code de ma page
<?php
//connection au serveur
$connexion = mysql_connect( "localhost", "mon identifiant", "mon mdp" ) ;
//sélection de la base de données:
$db = mysql_select_db("ma base") ;
//récupération des valeurs des champs:
//Date de réception:
$date_reception = $_POST["date_reception"];
//Civilité:
$civilite = $_POST["civilite"] ;
//Nom:
$nom = $_POST["nom"] ;
//Prénom:
$prenom = $_POST["prenom"] ;
//Adresse:
$adresse = $_POST["adresse"] ;
//Code Postal:
$code_postal = $_POST["code_postal"] ;
//Ville:
$ville = $_POST["ville"] ;
//téléphone:
$telephone = $_POST["telephone"];
//Thématique du courrier:
$thematique_courrier = $_POST["thematique_courrier"] ;
//Objet du courrier:
$objet_courrier = $_POST["objet_courrier"] ;
//Transféré a:
$transfere_a = $_POST["transfere_a"] ;
//Date de réponse:
$date_reponse = $_POST["date_reponse"] ;
//récupération de l'identifiant du courrier:
$id = $_POST["id"] ;
//création de la requête SQL:
$sql = "UPDATE courrier
SET date_reception = '$date_reception',
civilite = '$civilite',
nom = '$nom',
prenom = '$prenom',
adresse = '$adresse',
code_postal = '$code_postal',
ville = '$ville',
telephone = '$telephone',
thematique_courrier = '$thematique_courrier',
objet_courrier = '$objet_courrier',
transfere_a = '$transfere_a',
date_reponse = 'date_reponse'
WHERE id = '$id'";
//exécution de la requête SQL:
$requete = mysql_query($sql, $connexion) or die( mysql_error() ) ;
//affichage des résultats, pour savoir si la modification a marchée:
if($requete)
{
echo("Le courrier a été modifié") ;
}
else
{
echo("Le courrier n'a pas été modifié") ;
}
?>
Qui aurait une idée de la non mise à jour de ma base ?
Merci pour votre aide
Je dois surement avoir un souci avec mon code car les modifications effectuées depuis ma reqûete ne sont pas enregistrées sur ma base...
Voici le code de ma page
<?php
//connection au serveur
$connexion = mysql_connect( "localhost", "mon identifiant", "mon mdp" ) ;
//sélection de la base de données:
$db = mysql_select_db("ma base") ;
//récupération des valeurs des champs:
//Date de réception:
$date_reception = $_POST["date_reception"];
//Civilité:
$civilite = $_POST["civilite"] ;
//Nom:
$nom = $_POST["nom"] ;
//Prénom:
$prenom = $_POST["prenom"] ;
//Adresse:
$adresse = $_POST["adresse"] ;
//Code Postal:
$code_postal = $_POST["code_postal"] ;
//Ville:
$ville = $_POST["ville"] ;
//téléphone:
$telephone = $_POST["telephone"];
//Thématique du courrier:
$thematique_courrier = $_POST["thematique_courrier"] ;
//Objet du courrier:
$objet_courrier = $_POST["objet_courrier"] ;
//Transféré a:
$transfere_a = $_POST["transfere_a"] ;
//Date de réponse:
$date_reponse = $_POST["date_reponse"] ;
//récupération de l'identifiant du courrier:
$id = $_POST["id"] ;
//création de la requête SQL:
$sql = "UPDATE courrier
SET date_reception = '$date_reception',
civilite = '$civilite',
nom = '$nom',
prenom = '$prenom',
adresse = '$adresse',
code_postal = '$code_postal',
ville = '$ville',
telephone = '$telephone',
thematique_courrier = '$thematique_courrier',
objet_courrier = '$objet_courrier',
transfere_a = '$transfere_a',
date_reponse = 'date_reponse'
WHERE id = '$id'";
//exécution de la requête SQL:
$requete = mysql_query($sql, $connexion) or die( mysql_error() ) ;
//affichage des résultats, pour savoir si la modification a marchée:
if($requete)
{
echo("Le courrier a été modifié") ;
}
else
{
echo("Le courrier n'a pas été modifié") ;
}
?>
Qui aurait une idée de la non mise à jour de ma base ?
Merci pour votre aide
A voir également:
- Problème d'UPDATE
- Windows update bloqué - Guide
- Winget update - Guide
- Asus live update - Télécharger - Utilitaires
- Wsus offline update - Télécharger - Systèmes d'exploitation
- Nettoyage windows update - Guide
5 réponses
bonsoir,
dans votre code afficher la requête echo $sql; apès le where
copiez la requête et testez la en phpmyadmin, vous verez si elle fonctionne comme vous le souhaitez.
dans votre code afficher la requête echo $sql; apès le where
copiez la requête et testez la en phpmyadmin, vous verez si elle fonctionne comme vous le souhaitez.
voici le code de ma page contenant le formulaire :
<?php
//connection au serveur:
$connexion = mysql_connect( "localhost", "mon identifiant", "mon mdp" ) ;
//sélection de la base de données:
$db = mysql_select_db( "ma base" ) ;
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["id"] ;
//requête SQL:
$sql = "SELECT *
FROM courrier
WHERE id = $id" ; //ici "id"
//exécution de la requête:
$requete = mysql_query( $sql, $connexion ) ;
//affichage des données:
if( $result = mysql_fetch_array( $requete ) )
{
?>
<form name="insertion" action="modification2.php" method="POST">
<table border="0" align="center" cellspacing="2" cellpadding="2">
<tr align="center">
<td class="style2" style="width: 186px"><strong>Date de réception</strong></td>
<td style="width: 357px">
<input type="text" name="date_reception" value="<?php echo($result["date_reception"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="height: 28px; width: 186px"><strong>Civilité</strong></td>
<td style="width: 357px; height: 28px">
<input type="text" name="civilite" value="<?php echo($result["civilite"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Nom</strong></td>
<td style="width: 357px">
<input type="text" name="nom" value="<?php echo($result["nom"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Prénom</strong></td>
<td style="width: 357px">
<input type="text" name="prenom" value="<?php echo($result["prenom"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Adresse</strong></td>
<td style="width: 357px">
<input type="text" name="adresse" value="<?php echo($result["adresse"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Code Postal</strong></td>
<td style="width: 357px">
<input type="text" name="code_postal" value="<?php echo($result["code_postal"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Ville</strong></td>
<td style="width: 357px">
<input type="text" name="ville" value="<?php echo($result["ville"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Téléphone</strong></td>
<td style="width: 357px">
<input type="text" name="telephone" value="<?php echo($result["telephone"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Thématique du courrier</strong></td>
<td style="width: 357px">
<input type="text" name="thematique_courrier" value="<?php echo($result["thematique_courrier"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Objet du courrier</strong></td>
<td style="width: 357px">
<input type="text" name="objet_courrier" value="<?php echo($result["objet_courrier"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Transféré a</strong></td>
<td style="width: 357px">
<input type="text" name="transfere_a" value="<?php echo($result["transfere_a"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Date de réponse</strong></td>
<td style="width: 357px">
<input type="text" name="date_reponse" value="<?php echo($result["date_reponse"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td colspan="2"><br />
<input type="submit" value="Modifier"></td>
</tr>
</table>
</form>
<?php
}//fin if
?>
Qu'en penses-tu ?
<?php
//connection au serveur:
$connexion = mysql_connect( "localhost", "mon identifiant", "mon mdp" ) ;
//sélection de la base de données:
$db = mysql_select_db( "ma base" ) ;
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["id"] ;
//requête SQL:
$sql = "SELECT *
FROM courrier
WHERE id = $id" ; //ici "id"
//exécution de la requête:
$requete = mysql_query( $sql, $connexion ) ;
//affichage des données:
if( $result = mysql_fetch_array( $requete ) )
{
?>
<form name="insertion" action="modification2.php" method="POST">
<table border="0" align="center" cellspacing="2" cellpadding="2">
<tr align="center">
<td class="style2" style="width: 186px"><strong>Date de réception</strong></td>
<td style="width: 357px">
<input type="text" name="date_reception" value="<?php echo($result["date_reception"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="height: 28px; width: 186px"><strong>Civilité</strong></td>
<td style="width: 357px; height: 28px">
<input type="text" name="civilite" value="<?php echo($result["civilite"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Nom</strong></td>
<td style="width: 357px">
<input type="text" name="nom" value="<?php echo($result["nom"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Prénom</strong></td>
<td style="width: 357px">
<input type="text" name="prenom" value="<?php echo($result["prenom"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Adresse</strong></td>
<td style="width: 357px">
<input type="text" name="adresse" value="<?php echo($result["adresse"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Code Postal</strong></td>
<td style="width: 357px">
<input type="text" name="code_postal" value="<?php echo($result["code_postal"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Ville</strong></td>
<td style="width: 357px">
<input type="text" name="ville" value="<?php echo($result["ville"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Téléphone</strong></td>
<td style="width: 357px">
<input type="text" name="telephone" value="<?php echo($result["telephone"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Thématique du courrier</strong></td>
<td style="width: 357px">
<input type="text" name="thematique_courrier" value="<?php echo($result["thematique_courrier"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Objet du courrier</strong></td>
<td style="width: 357px">
<input type="text" name="objet_courrier" value="<?php echo($result["objet_courrier"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Transféré a</strong></td>
<td style="width: 357px">
<input type="text" name="transfere_a" value="<?php echo($result["transfere_a"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td class="style2" style="width: 186px"><strong>Date de réponse</strong></td>
<td style="width: 357px">
<input type="text" name="date_reponse" value="<?php echo($result["date_reponse"]) ;?>" style="width: 342px"></td>
</tr>
<tr align="center">
<td colspan="2"><br />
<input type="submit" value="Modifier"></td>
</tr>
</table>
</form>
<?php
}//fin if
?>
Qu'en penses-tu ?
non ce script est sur la page modification.php
le script de modification2 est le premier saisi en haut du post.
modification2.php est appelé par modification.php
L'idée est simple : j'ai créer une page de recherche d'enregistrement. Quand le résultat s'affiche dans un tableau, à la fin de chaque ligne d'enregistrement s'affiche uin lien modifier (dans la dernière colonne du tableau) qui envoi à modification.php?id=1 (pour l'enregistrement dont l'id est 1 par exemple)
le script de modification2 est le premier saisi en haut du post.
modification2.php est appelé par modification.php
L'idée est simple : j'ai créer une page de recherche d'enregistrement. Quand le résultat s'affiche dans un tableau, à la fin de chaque ligne d'enregistrement s'affiche uin lien modifier (dans la dernière colonne du tableau) qui envoi à modification.php?id=1 (pour l'enregistrement dont l'id est 1 par exemple)
Re,
je pense avoir trouvé,, il faut rajouter un champ caché à ton formulaire pour faire "suivre" l'id vers le script modif2.php
comme ça:
je pense avoir trouvé,, il faut rajouter un champ caché à ton formulaire pour faire "suivre" l'id vers le script modif2.php
comme ça:
....... <tr align="center"> <td colspan="2"><br /> <!-- on rajoute un champ caché pour passer la valeur de id au script suivant --> <input type="hidden" name="id" value="<?php echo $id ;?>" > <input type="submit" value="Modifier"></td> </tr> ....
J'ai essayé ton idée, y'a du mieux : ça n'enregistre pas ce que je saisis dans le formulaire mais date_repon dans le champ correspondant à date_reponse (leu seul que j'ai modifié dans mon essai
j'ai regardé de plus près ta requette UPDATE, il y a une erreur tu as oublié le $ devant date_reponse
essayes en codant ta requête ainsi:
essayes en codant ta requête ainsi:
//création de la requête SQL: $sql = "UPDATE courrier SET date_reception = '".$date_reception."', civilite = '".$civilite."', nom = '".$nom."', prenom = '".$prenom."', adresse = '".$adresse."', code_postal = '".$code_postal."', ville = '".$ville."', telephone = '".$telephone."', thematique_courrier = '".$thematique_courrier."', objet_courrier = '".$objet_courrier."', transfere_a = '".$transfere_a."', date_reponse = '".$date_reponse."' WHERE id = '".$id'."";
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai placé WHERE id = '$id' avant $sql = "UPDATE courrier
SET date_reception = '$date_reception',
civilite = '$civilite',
nom = '$nom',
Si quelqu'un a une idée....
Merci
après la ligne where ajoutez un echo pour voir comment est construite la requête.
puis faites un copier de cette requête et un coller dans l'administration de la base pour voir ce que donne la requête.
Je vais faire ça, merci encore
Voici ce que ça donne :
UPDATE courrier SET date_reception = '24/11/2008', civilite = 'Monsieur', nom = 'BY', prenom = 'Dd', adresse = '70 rue tr', code_postal = '69000', ville = 'LYON', telephone = '0600000000', thematique_courrier = 'Thématique 1', objet_courrier = 'Objet 1', transfere_a = 'Jean-Jacques D', date_reponse = 'date_reponse' WHERE id = ''Le courrier a été modifié
ça vous parle ?
alors mets un echo pour voir ce que tu reçois comme id
id reçu : Le courrier a été modifié
Mais les modifications ne sont toujours pas enregistrées dans ma base...