[php] pb pour modifer une donnée après ajout
Fermé
micom59
Messages postés
71
Date d'inscription
jeudi 28 juin 2007
Statut
Membre
Dernière intervention
11 août 2009
-
3 juil. 2007 à 09:08
micom59 Messages postés 71 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 11 août 2009 - 3 juil. 2007 à 09:30
micom59 Messages postés 71 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 11 août 2009 - 3 juil. 2007 à 09:30
A voir également:
- [php] pb pour modifer une donnée après ajout
- Easy php - Télécharger - Divers Web & Internet
- Ajout rapide snap - Forum Snapchat
- Retour a la ligne php ✓ - Forum PHP
2 réponses
if($article==$_POST['article'] and $zone==$_POST['zone'])
{
$quantite=$_POST['quantite']+$quantite;
UPDATE article SET quantite=$quantite;
echo "quantité modifiée";
}
Ton update, c'est une requête, au même titre que le INSERT. Tu dois donc le mettre dans un mysql_query ...
2eme erreur, et c'est la cause de pas mal de problèmes : UPDATE article SET quantite=$quantite;
Tu changes bien la quantité, mais ne défini pas pour quel article ! Tu vas donc modifier la quantité deTOUS tes articles !!
Un update correct serait donc UPDATE article SET quantite=$quantite where article_id = $mon_id (ou autre clé unique de ta table).
le tout dans un mysql_query().
J'ai été assez clair ?
Bonne continuation
Ben
{
$quantite=$_POST['quantite']+$quantite;
UPDATE article SET quantite=$quantite;
echo "quantité modifiée";
}
Ton update, c'est une requête, au même titre que le INSERT. Tu dois donc le mettre dans un mysql_query ...
2eme erreur, et c'est la cause de pas mal de problèmes : UPDATE article SET quantite=$quantite;
Tu changes bien la quantité, mais ne défini pas pour quel article ! Tu vas donc modifier la quantité deTOUS tes articles !!
Un update correct serait donc UPDATE article SET quantite=$quantite where article_id = $mon_id (ou autre clé unique de ta table).
le tout dans un mysql_query().
J'ai été assez clair ?
Bonne continuation
Ben
micom59
Messages postés
71
Date d'inscription
jeudi 28 juin 2007
Statut
Membre
Dernière intervention
11 août 2009
1
3 juil. 2007 à 09:30
3 juil. 2007 à 09:30
merci ben, j'ai effectuer les modifications, maintenant ca me donne ca
<html>
<body>
<?php
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'base';
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
$sql = "SELECT * FROM article";
$result = mysql_query($sql) or die(mysql_error());
$articles= mysql_fetch_array($result);
$article = $articles['article'];
$quantite = $articles['quantite'];
$zone = $articles['zone'];
if($article==$_POST['article'] and $zone==$_POST['zone'])
{
$quantite=$_POST['quantite']+$quantite;
mysql_query("UPDATE article SET quantite=$quantite where article=$article");
echo "quantité modifiée";
}
else
{
mysql_query("INSERT INTO article VALUES('$_POST[article]','$_POST[quantite]','$_POST[zone]') ");
echo "Enregistrement effectué";
}
?>
<BODY BGCOLOR=#33CCFF>
<p>
<a href="index.html">Accueil</a><p>
<a href="visu.php">Visualisation générale</a><p>
</body>
</html>
J'ai pas trop compris le truc des clés uniques! donc j'ai mis where article=$article, je ne sais pas si il comprends
Par contre il reste un petit probleme, lorsque je mets le meme article et meme zone il m'ajoute l'article au lieu de modifier, il saute le if...
Serais tu pourquoi?
Encore merci.
<html>
<body>
<?php
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'base';
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
$sql = "SELECT * FROM article";
$result = mysql_query($sql) or die(mysql_error());
$articles= mysql_fetch_array($result);
$article = $articles['article'];
$quantite = $articles['quantite'];
$zone = $articles['zone'];
if($article==$_POST['article'] and $zone==$_POST['zone'])
{
$quantite=$_POST['quantite']+$quantite;
mysql_query("UPDATE article SET quantite=$quantite where article=$article");
echo "quantité modifiée";
}
else
{
mysql_query("INSERT INTO article VALUES('$_POST[article]','$_POST[quantite]','$_POST[zone]') ");
echo "Enregistrement effectué";
}
?>
<BODY BGCOLOR=#33CCFF>
<p>
<a href="index.html">Accueil</a><p>
<a href="visu.php">Visualisation générale</a><p>
</body>
</html>
J'ai pas trop compris le truc des clés uniques! donc j'ai mis where article=$article, je ne sais pas si il comprends
Par contre il reste un petit probleme, lorsque je mets le meme article et meme zone il m'ajoute l'article au lieu de modifier, il saute le if...
Serais tu pourquoi?
Encore merci.