php -->matrice

Shadow_walker
Invité n'ayant pas de compte PHPfrance

09 août 2014, 18:49

salut !!
je dois calculer le montant hors taxe avec prix et quantité ?je l'ai fait de maniere manuelle a la declaration de la matrcie .mais j'ai ajouté les donées recuperes sur le formulaire mais vu que le calcul de la moyenne etait pas automatique cette derniere ligne ajouté n'est pas concerné.comment peut je faire cela dans la boucle ???
voici mon code
<?php
	//Recuperation des données saisies sur le formulaire
	$numero=$_POST['numero'];
	$prenom=$_POST['prenom'];
	$nom=$_POST['nom'];
	$produit=$_POST['produit'];
	$adresse=$_POST['adresse'];
	$quantite=$_POST['quantite'];
	$prix=$_POST['prix'];
	$tab=array($produit,$prix,$quantite);
$mat=array( array("produit" =>"ordinateur","prix"=>100000,"quantite"=>10,"mont"=>100000*10),
	            array("produit"=>"ecran","prix"=>20000,"quantite"=>13,"mont"=>2000*13),                                                     
				array("produit" =>"clavier","prix"=>5000,"quantite"=>15,"mont"=>5000*15), 
			);
			$total=100000*10+2000*13+5000*15;
			array_push($mat, $tab);
echo"<table border='1'>";
    echo"Numero : $numero<br> Prenom : $prenom <br>Nom : $nom,<br>Adresse : $adresse";
	echo"<tr>
			<td>Produit</td>
			<td>Prix</td>
			<td>Quantite</td>
			<td>Prix*Qte  </td>
		</tr>
	";
	foreach($mat as $ligne)
	{
	    echo"<tr>";
				foreach ($ligne as $valeur)
				{
					echo"<td>";
						echo $valeur." ";
		  			echo"</td>";
	 			}
	 	echo"</tr>";
   	    echo"<br>";  
	     
	}
	echo"</table>";
	echo "Total : $total";
	
?>
Modifié en dernier par moogli le 11 août 2014, 00:47, modifié 1 fois.
Raison : Bbcode php

ViPHP
ViPHP | 1996 Messages

09 août 2014, 19:50

Un formulaire ne peut te donner d'un seul calcul à la fois sauf si tu boucle sur un formulaire à tableau mais cela reste assez compliqué dans ta situtation.
Je t'ai créé une petite fonction qui te permet de calculer le prix.
<?php//Recuperation des données saisies sur le formulaire
$numero=$_POST['numero'];
$prenom=$_POST['prenom'];
$nom=$_POST['nom'];
$produit=$_POST['produit'];
$adresse=$_POST['adresse'];
$quantite=$_POST['quantite'];
$prix=$_POST['prix'];


function calculPrixHorsTaxe ($prix=0, $quantite = 0) {
	if (!empty($prix) && !empty($quantite)) {
		$prix = (float) $prix;
		$quantite = (float) $quantite;
		return $prix*$quantite;
	}
	else
		return 0;
}

?>
<table border='1'>
	<caption>Numero : <?php echo $numero; ?><br> 
			Prenom : <?php echo $prenom; ?> <br>
			Nom : <?php echo $nom; ?><br>
			Adresse : <?php echo $adresse; ?>
	</caption>
	<tr>
		<th>Produit</th>
		<th>Prix</th>
		<th>Quantite</th>
		<th>Prix*Qte</th>
	</tr>
	<tr>
		<td><?php echo $produit; ?></td>
		<td><?php echo $prix; ?></td>
		<td><?php echo $quantite; ?></td>
		<td><?php echo calculPrixHorsTaxe($prix,$quantite); ?></td>
	</tr>
	<tr>
		<td rowspan="2" colspan="2">Total :</td>
		<td rowspan="2" colspan="2">---</td>
</table>
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Shadow_walker
Invité n'ayant pas de compte PHPfrance

09 août 2014, 20:15

merci Aureusms marche a merveille !!!
je vais essayer de faire ca en boucle pour pouvoir calculer tous les montants hors taxe sur ma matrice et aussi pour les données que je vais recuperer sur le formulaire html

Shadow_walker
Invité n'ayant pas de compte PHPfrance

09 août 2014, 20:34

parce que j'ai aussi une matrice de commande qui contient des produits,quantite,prix ce que j'ai recupere sur le formulaire je l'insere a la fin de la nouvelle matrice
<?php
	//Recuperation des données saisies sur le formulaire
	$numero=$_POST['numero'];
	$prenom=$_POST['prenom'];
	$nom=$_POST['nom'];
	$produit=$_POST['produit'];
	$adresse=$_POST['adresse'];
	$quantite=$_POST['quantite'];
	$prix=$_POST['prix'];
//declaration du tableau qui contiendra les valeurs du formulaire 
	$tab=array($produit,$prix,$quantite);
//declaration de la matrice de commandes qui sera aussi affiché
$mat=array( array("produit" =>"ordinateur","prix"=>100000,"quantite"=>10,"mont"=>100000*10),
	            array("produit"=>"ecran","prix"=>20000,"quantite"=>13,"mont"=>2000*13),                                                     
				array("produit" =>"clavier","prix"=>5000,"quantite"=>15,"mont"=>5000*15), 
			);
			$total=100000*10+2000*13+5000*15;
			array_push($mat, $tab);
Modifié en dernier par moogli le 11 août 2014, 00:48, modifié 1 fois.
Raison : Bbcode php

ViPHP
ViPHP | 1996 Messages

10 août 2014, 18:03

Le but de la fonction est de l'utiliser en boucle :wink:
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr