[php] pb faire une som avec d donné de la baz
micom59
Messages postés
71
Date d'inscription
Statut
Membre
Dernière intervention
-
micom59 Messages postés 71 Date d'inscription Statut Membre Dernière intervention -
micom59 Messages postés 71 Date d'inscription Statut Membre Dernière intervention -
Bonjour, j'ai un formulaire où l'on peut rentrer un article, une quantité et une zone, et j'aimerais que quand le même article est ajouté, le programme ajoute la nouvelle quantité à la quantité déja présente.
je pensais faire ca avec un if($article=$_POST['article'){$_POST['quantite']=$_POST['quantite']+$quantite
Mais ca ne fontionne pas, d'ailleurs je ne sais même pas où inclure ce genre de fonction.
Dans mon formulaie les quantités et articles sont enregistrés sous le nom quantite et article
Voici le code php de ajouter.php (là où s'effectue l'ajout de l'article dans la base de donnée)
<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());
mysql_query("INSERT INTO article VALUES('$_POST[article]','$_POST[quantite]','$_POST[zone]') ");
echo "Enregistrement effectué";
?>
<a href="index.html">Retour</a><p>
</body>
</html>
J'ai aussi un programme qui permet de visualiser tous les articles, est-ce ici qu'il faudrait faire des modifications?
voici visu.php (qui me permet de tous voir)
<html>
<body>
<BODY BGCOLOR=#33CCFF>
<center><h1>Visualisation générale</h1></center>
<p>
<hr>
<?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());
$select = 'SELECT * FROM article order by article group by article';
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
echo "<h2><center><table width='200' border='1'><TR><TD>Article</TD><TD>Quantité</TD><TD>Zone</TD></TR></h2>\n";
while ($row = mysql_fetch_assoc($result))
{
echo "<h3><TR><TD>".$row["article"]."</TD><TD>".$row["quantite"]."</TD><TD>".$row["zone"]."</TD></TR></h3>\n";
}
?>
</body>
</html>
savez vous comment faire?
Merci d'avance, et merci encore à ceux qui m'ont aidé pour mes précédents problemes.
je pensais faire ca avec un if($article=$_POST['article'){$_POST['quantite']=$_POST['quantite']+$quantite
Mais ca ne fontionne pas, d'ailleurs je ne sais même pas où inclure ce genre de fonction.
Dans mon formulaie les quantités et articles sont enregistrés sous le nom quantite et article
Voici le code php de ajouter.php (là où s'effectue l'ajout de l'article dans la base de donnée)
<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());
mysql_query("INSERT INTO article VALUES('$_POST[article]','$_POST[quantite]','$_POST[zone]') ");
echo "Enregistrement effectué";
?>
<a href="index.html">Retour</a><p>
</body>
</html>
J'ai aussi un programme qui permet de visualiser tous les articles, est-ce ici qu'il faudrait faire des modifications?
voici visu.php (qui me permet de tous voir)
<html>
<body>
<BODY BGCOLOR=#33CCFF>
<center><h1>Visualisation générale</h1></center>
<p>
<hr>
<?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());
$select = 'SELECT * FROM article order by article group by article';
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
echo "<h2><center><table width='200' border='1'><TR><TD>Article</TD><TD>Quantité</TD><TD>Zone</TD></TR></h2>\n";
while ($row = mysql_fetch_assoc($result))
{
echo "<h3><TR><TD>".$row["article"]."</TD><TD>".$row["quantite"]."</TD><TD>".$row["zone"]."</TD></TR></h3>\n";
}
?>
</body>
</html>
savez vous comment faire?
Merci d'avance, et merci encore à ceux qui m'ont aidé pour mes précédents problemes.
A voir également:
- [php] pb faire une som avec d donné de la baz
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php ✓ - Forum PHP
- Donnez à ce fichier les mêmes droits d'accès que les autres notes de service. ✓ - Forum Windows
- Le fichier à télécharger est la nouvelle note de service de votre entreprise. importez ce fichier dans le bon dossier sur l'espace pix cloud. donnez à ce fichier les mêmes droits d'accès que les autres notes de service. ✓ - Forum Windows
3 réponses
essai de mettre dans ton ajout.php :
<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());
// on récupere les infos dans la base de données
$sql = "SELECT * FROM article";
$result = mysql_query($sql) or die(mysql_error());
$articles= mysql_fetch_array($result);
// on assigne les variables
$article = $articles['article'];
$quantite= $articles['quantite'];
// si c'est le meme article ( attention == dans les if ... )
if($article==$_POST['article')
{
$quantite=$_POST['quantite']+$quantite;
}
else
{
$quantite=$_POST['quantite'];
}
mysql_query("INSERT INTO article VALUES('$_POST[article]','$quantite','$_POST[zone]') ");
echo "Enregistrement effectué";
?>
<a href="index.html">Retour</a><p>
</body>
</html>
je ne te garantie pas a 100% mais ça devrai pas etre loin ;)
<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());
// on récupere les infos dans la base de données
$sql = "SELECT * FROM article";
$result = mysql_query($sql) or die(mysql_error());
$articles= mysql_fetch_array($result);
// on assigne les variables
$article = $articles['article'];
$quantite= $articles['quantite'];
// si c'est le meme article ( attention == dans les if ... )
if($article==$_POST['article')
{
$quantite=$_POST['quantite']+$quantite;
}
else
{
$quantite=$_POST['quantite'];
}
mysql_query("INSERT INTO article VALUES('$_POST[article]','$quantite','$_POST[zone]') ");
echo "Enregistrement effectué";
?>
<a href="index.html">Retour</a><p>
</body>
</html>
je ne te garantie pas a 100% mais ça devrai pas etre loin ;)
merci pour ton aide, il n'y a pas d'erreur mais l'addition ne s'effectue pas, les lignes s'ajoute bien dans ma base, elle se regroupe bien pour n'en former qu'une lors de la visualisaition, mais la quantité reste la même. C'est peut etre a cause du group by de la visualisation, enfin j'y connais pas grand chose, si tu as une idée n'hésite surtout pas.