begin process at 2012 05 28 14:17:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

calcul par annee


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

calcul par annee

lundi 22 mars 2010 à 11:30:23 | calcul par annee

tchaw

bonjour,
bonjour
je veux calculer la total d'un somme d'un champs(MTTC) du table (vente) à chaque année dans MYSQL
et je veux afficher le résultat dans un champs de texte par anneé
voila le formulaire :
Code PHP :
form action="page4.php" method="post">
  <table width="400" border="0" cellspacing="1" cellpadding="2" bgcolor="#7793AE">
  <tr>
<td> <strong>Choisir année</strong>: </td> 
<td><select name="annee" id="select"><option>2010<option>2011<option>2012</option>
  </select></td></tr></table>
  <p>
    <input type="submit" name="calan" value="Calculer" />
    </p>
  </p>
  </form>


et voila code de page4.php:
Code PHP :

<?php
 
$an=$_POST['annee'];
 $sum=(mysql_query("SELECT SUM(MTTC) FROM vente WHERE extract(year FROM date)=$an ")); 
$sum = mysql_result($sum,0);
?>
 
<p>&nbsp;</p>
		  <p>&nbsp;  </p>
		  <center>
<form id="form1" name="form1" method="post" action="">
<table width="100" border="0" cellspacing="1" cellpadding="2" bgcolor="#7793AE">
    <tr><td width="100"><div align="center" class="Style4">benefice<?php echo $an ?></div></td>
	<td><input type="text" name="id" value= <?php echo $sum;?> /></td>
	</tr>
	</table>
	<input name="" type="submit" value="enregistrer" />
	
	</form></center>
	
 
 


et il m'affiche message suivant:

"Warning: mysql_result(): supplied argument is not a valid MySQL result resource in "
j'ai besoin de votre aide

lundi 22 mars 2010 à 11:50:25 | Re : calcul par annee

lesims1000

sa fait le 4eme post que tu crée pour la même question....
lundi 22 mars 2010 à 11:59:07 | Re : calcul par annee

tchaw

merci
jai trouvé enfin la solution
et voila le nouveau code
Code PHP :
<?php
 if(!empty($_POST["annee"])){

$an=$_POST['annee'];
}
 $sum=(mysql_query("SELECT SUM(MTTC) FROM vente  ")); 
$result = mysql_query($sum);

?>

<p>&nbsp;</p>
		  <p>&nbsp;  </p>
		  <center>
<form id="form1" name="form1" method="post" action="">
<table width="100" border="0" cellspacing="1" cellpadding="2" bgcolor="#7793AE">
<tr><td width="100"><div align="center" class="Style4">benefice</div></td>
<td width="100"><div align="center" class="Style4">montant</div></td></tr>
    <tr><td><input type="text" name="ben" value=" benefice<?php echo $an ?>"/></td>
	<td><input type="text" name="mnt" value=" <?php echo mysql_result($sum, 0);?>" /></td>
	</tr>
	</table>
	<input name="enreg_an" type="submit" value="enregistrer" />
	
	</form></center>

merci pour tous
lundi 22 mars 2010 à 12:01:41 | Re : calcul par annee

Tonio_35

Bonjour,

Pas besoin de poster 4 fois le même message ! A la limite tu peux utiliser la partie "Répondre à ce message" pour remonter ton message dans le forum QUAND IL EST TROP BAS (Ce n'est pas le cas de tes 4 messages)...

1 - Sécurisation du code :
Code PHP :
<?php
$an=mysql_real_escape_string($_POST['annee']);
$sum=mysql_query("SELECT SUM(MTTC) FROM vente WHERE extract(year FROM date)='$an'");
?>

Plus de détails sur mysql_real_escape_string

2 - On prépare un débug clair :
Code PHP :
<?php
$sum=mysql_query("SELECT SUM(MTTC) FROM vente WHERE extract(year FROM date)='$an'") or die('Invalid query: ' . mysql_error()); 
?>


3 - Testes à effectuer pour débugger :
On affiche la query pour la vérifier :
Code PHP :
<?php
exit("SELECT SUM(MTTC) FROM vente WHERE extract(year FROM date)='$an'");
// Devrais écrir dans ta page qqch comme :
// SELECT SUM(MTTC) FROM vente WHERE extract(year FROM date)='2003'
$sum=mysql_query("SELECT SUM(MTTC) FROM vente WHERE extract(year FROM date)='$an'") or die('Invalid query: ' . mysql_error());
?>

On copie le texte généré dans phpMyAdmin pour voir si ca marche...

Après tout ces tests dit préviens moi des différents résultats.

_________________________________
Min iPomme
lundi 22 mars 2010 à 12:03:14 | Re : calcul par annee

Tonio_35

Dans ta solution tu n'as plus de clause WHERE ?


_________________________________
Min iPomme
lundi 22 mars 2010 à 12:07:48 | Re : calcul par annee

tchaw

ok
merci
pour le moment jai testé sans clause where
et maintenant je veux tester avc la clause where
lundi 22 mars 2010 à 12:21:46 | Re : calcul par annee

tchaw

et voila jai testé ce code
Code PHP :

<?php
 if(!empty($_POST["annee"])){

$an=$_POST['annee'];
$an=mysql_real_escape_string($_POST['annee']);

}
 $sum=mysql_query("SELECT SUM(MTTC) FROM vente WHERE extract(year FROM date)='$an'") or die('Invalid query: ' . mysql_error()); 

$result = mysql_query($sum);

?>

<p>&nbsp;</p>
		  <p>&nbsp;  </p>
		  <center>
<form id="form1" name="form1" method="post" action="">
<table width="100" border="0" cellspacing="1" cellpadding="2" bgcolor="#7793AE">
<tr><td width="100"><div align="center" class="Style4">benefice</div></td>
<td width="100"><div align="center" class="Style4">montant</div></td></tr>
    <tr><td><input type="text" name="ben" value=" benefice<?php echo $an ?>"/></td>
	<td><input type="text" name="mnt" value=" <?php echo mysql_result($sum, 0);?>" /></td>
	</tr>
	</table>
	<input name="enreg_an" type="submit" value="enregistrer" />
	
	</form></center>


et il m'affiche ce message suivant
"Invalid query: Champ 'date' inconnu dans where clause "
lundi 22 mars 2010 à 13:00:40 | Re : calcul par annee

Tonio_35

Alors :
J'ai supprimé deux lignes qui servent à rien et déclaré ta variable $an histoire que si tu ne passe pas dans le IF, elle existe quand même.
Code PHP :
<?php
$an = null;
if(!empty($_POST["annee"]))
{
  // A SUPPRIMER : $an=$_POST['annee'];
  $an=mysql_real_escape_string($_POST['annee']);
}
$sum=mysql_query("SELECT SUM(MTTC) FROM vente WHERE extract(year FROM date)='$an'") or die('Invalid query: ' . mysql_error()); 
// A SUPPRIMER : $result = mysql_query($sum);
?>


Ensuite, comme tu te sert de la colonne date dans le extract, tu as besoin de le mettre dans ton select il me semble.
Code :
"SELECT SUM(MTTC), extract(year FROM date) AS myyear FROM vente WHERE myyear='$an'"

Du coup ton mysql_result contiendras un tableau du style :
Code :
0        | 1
Ta somme | L'année

Donc pour récupérer la somme avec mysql_result :

Code HTML :
<input type="text" name="mnt" value="<?php echo mysql_result($sum, 0, 0);?>" />


_________________________________
Min iPomme
lundi 22 mars 2010 à 13:19:48 | Re : calcul par annee

tchaw

salut
pour votre réponse
jai fait le code suivant
Code PHP :

<?php
$an = null;
 if(!empty($_POST["annee"])){
$an=$_POST['annee'];

$an=mysql_real_escape_string($_POST['annee']);

}
 $sum=mysql_query("SELECT SUM(MTTC), extract(year FROM date) AS myyear FROM vente WHERE myyear='$an'"); 



?>

<p>&nbsp;</p>
		  <p>&nbsp;  </p>
		  <center>
<form id="form1" name="form1" method="post" action="">
<table width="100" border="0" cellspacing="1" cellpadding="2" bgcolor="#7793AE">
<tr><td width="100"><div align="center" class="Style4">benefice</div></td>
<td width="100"><div align="center" class="Style4">montant</div></td></tr>
    <tr><td><input type="text" name="ben" value=" benefice<?php echo $an ?>"/></td>
	<td><input type="text" name="mnt" value=" <?php echo mysql_result($sum, 0, 0);?>" /></td>
	</tr>
	</table>
	<input name="enreg_an" type="submit" value="enregistrer" />
	
	</form></center>


et il n'ay rien afficher ........
lundi 22 mars 2010 à 13:41:47 | Re : calcul par annee

Tonio_35

Chez moi, ca :
Code PHP :
<?php
$an = null;
 if(!empty($_POST["annee"]))
{
	$an=mysql_real_escape_string($_POST['annee']);
}
$sum=mysql_query("SELECT SUM(MTTC) FROM vente WHERE EXTRACT(YEAR FROM `date`)='$an'") or die("Erreur SQL : " . mysql_error());
?>
<p>&nbsp;</p>
		  <p>&nbsp;  </p>
		  <center>
<form id="form1" name="form1" method="post" action="">
<table width="100" border="0" cellspacing="1" cellpadding="2" bgcolor="#7793AE">
<tr><td width="100"><div align="center" class="Style4">benefice</div></td>
<td width="100"><div align="center" class="Style4">montant</div></td></tr>
    <tr><td><input type="text" name="ben" value=" benefice<?php echo $an ?>"/></td>
	<td><input type="text" name="mnt" value=" <?php echo mysql_result($sum, 0);?>" /></td>
	</tr>
	</table>
	<input name="enreg_an" type="submit" value="enregistrer" />
	
	</form></center>

Ca fonctionne bien...

PS : j'ai mis des ` autour de date car je sais plus si c'est un mot clé SQL. Quand on utilise des mots clé SQL comme nom de colonnes ca peux poser problème... Dans ce cas il faut "échapper" la colonne avec des ``.

Vérifie que tu as bien une colonne date dans ta table vente.

_________________________________
Min iPomme

1 2

Cette discussion est classée dans : code, php, mysql, annee, calcul


Répondre à ce message

Sujets en rapport avec ce message

calcul par annee [ par tchaw ] bonjour, bonjour je veux calculer la total d'un somme d'un champs(MTTC) du table (vente) à chaque année dans MYSQL et je veux afficher le résultat dan calcul par annee [ par tchaw ] bonjour, bonjour je veux calculer la total d'un somme d'un champs(MTTC) du table (vente) à chaque année dans MYSQL et je veux afficher le résultat dan calcul par annee [ par tchaw ] bonjour, bonjour je veux calculer la total d'un somme d'un champs(MTTC) du table (vente) à chaque année dans MYSQL et je veux afficher le résultat dan affichage avatar php-mySql [ par benny11 ] Bonjour, Voilà mon soucis, j'ai créé un site pour motard, avec un espace membre, tous fonction correctement, sauf l'affichage de l'avatar, alors que Récupérer les valeurs de la première colonne d'une table dans un tableau [ par etincelle01 ] Bonsoir, Dans PHP, il y a la fonction mysql_fetch_array() qui place les enregistrements résultats d'une requête dans un tableau. Mais il n'y a pas de galerie photo avec php [ par stophking ] bonjour : je suis entrain de créer une galerie photo avec php/mysql et j'aimeria bien que vous me corriger le code si il ya des fautes, et une chose q Bonsoir,Donnez-moi s'il vous plait le code en php de calcul la moyenne des note des étudiants [ par floranda ] Bonsoir,Donnez-moi s'il vous plait le code en php de calcul la moyenne des note des étudiants.merci php mysql sous linux [ par kate1910 ] Bonjour tout le monde , je suis débutante en php et mySQL et j'ai une application à faire , je travail sous linux j'ai essayé d'installer php,mysql et Créer des documents XML avec MySQL et PHP [ par kate1910 ] Bonjour tout le monde , bon comme le titre indique j'essaye decréer un fichier XML avec MySQL et PHP . dans ma base de donnée j'ai une tables" tablea recherche bdd et mise a jour dans la table [ par Jarod1980 ] Bonjour, Je suis en train de mettre en place une petite application permettant de rechercher une personne dans ma base de données. Une fois la person


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,248 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales