Probleme requete update mysql/php
medkov
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
quelqu'un peut m'aider svp???? la requête update ne modifie pas la table!!!!! voila le code
quelqu'un peut m'aider svp???? la requête update ne modifie pas la table!!!!! voila le code
<?php $sql="select * from fournisseurs where idf='".$_GET['idf']."'"; $requete=mysql_query($sql); $resultat=mysql_fetch_array($requete); if(isset($_POST['Envoyer'])){ $sql="update fournisseurs set Nom='".$_POST['Nom']."', Prenom='".$_POST['Prenom']."', Tel='".$_POST['Tel']."', Fax='".$_POST['Fax']."', Mail='".$_POST['Mail']."', Adresse='".$_POST['Adresse']."', responsable='".$_POST['responsable']."' "; $requete=mysql_query($sql); if($requete) {echo "Bon"; echo "<script language=\"javascript\"> window.alert(\" modificatio okokokok . \"); </script>"; } else print "NON"; } ?>
A voir également:
- Probleme requete update mysql/php
- Windows update bloqué - Guide
- Winget update - Guide
- Asus live update - Télécharger - Utilitaires
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
1 réponse
Bonjour
Heureusement qu'ellle ne marche pas, tu aurais modifié toute ta table !
En effet il n'y a aucune condition dans ton UPDATE : il va donc s'appliquer à toute la table.
Si tu croyais qu'il ne s'appliquerait qu'aux lignes choisies par le SELECT, c'est que tu n'as pas compris à quoi sert le SELECT. Il sert à retrouver des données dans la base à partir de certains critères, mais n'a aucune action sur le SELECT qui peut suivre.
Je vais donc supposer que ton SELECT est totalement inutile (d'ailleurs tu n'utilises pas son résultat) mais qu'il manque un WHERE ) à ton UPDATE :
Et, pour diagnostiquer l'erreur :
Il y a un tas de causes possibles (connexion à la base, apostrophes dans les données, $_POST['Envoyer'] pas défini...) maos nous y reviendrons plus tard.
Heureusement qu'ellle ne marche pas, tu aurais modifié toute ta table !
En effet il n'y a aucune condition dans ton UPDATE : il va donc s'appliquer à toute la table.
Si tu croyais qu'il ne s'appliquerait qu'aux lignes choisies par le SELECT, c'est que tu n'as pas compris à quoi sert le SELECT. Il sert à retrouver des données dans la base à partir de certains critères, mais n'a aucune action sur le SELECT qui peut suivre.
Je vais donc supposer que ton SELECT est totalement inutile (d'ailleurs tu n'utilises pas son résultat) mais qu'il manque un WHERE ) à ton UPDATE :
$sql="update fournisseurs SET Nom='".$_POST['Nom']."', Prenom='".$_POST['Prenom']."', Tel='".$_POST['Tel']."', Fax='".$_POST['Fax']."', Mail='".$_POST['Mail']."', Adresse='".$_POST['Adresse']."', responsable='".$_POST['responsable']."' WHERE idf='".$_GET['idf']."'";
Et, pour diagnostiquer l'erreur :
$requete=mysql_query($sql) or die (mysql_error());
Il y a un tas de causes possibles (connexion à la base, apostrophes dans les données, $_POST['Envoyer'] pas défini...) maos nous y reviendrons plus tard.