Comment insérer une boucle PHP dans du PHP
douah-max
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Mon problème est le fait que j'aimerais ajouter une boucle while dans du code PHP. Le but c'est de réaliser une calculatrice qui calcule la taxe à ajouter à un prix conformément au montant(grille tarifaire) saisi. Sauf que les chiffres sont issu d'une base de données.
Si c'était statique, j'allais le faire mais le fait que les chiffres provient de la DB me complique la tache.
Votre aide sera hautement apprécié!
Merci d'avance!
Voici le code PHP:
EDIT : Ajout des BALISES DE CODE
Mon problème est le fait que j'aimerais ajouter une boucle while dans du code PHP. Le but c'est de réaliser une calculatrice qui calcule la taxe à ajouter à un prix conformément au montant(grille tarifaire) saisi. Sauf que les chiffres sont issu d'une base de données.
Si c'était statique, j'allais le faire mais le fait que les chiffres provient de la DB me complique la tache.
Votre aide sera hautement apprécié!
Merci d'avance!
Voici le code PHP:
if($_POST['amount'] <= 10000){
echo $_POST['amount'] + 500;
} elseif ($_POST['amount'] <= 20000) {
echo $_POST['amount'] + 2000;
}
Voici la boucle à insérer:
<?php while($price = $ps3 ->fetch()) { ?>
//Code PHP ci-dessus
<?php } ?>
Les chiffres doivent provenir de la base de données.
J'ai essayé ceci:
<?php
if($_POST['amount'] <= 10000){
echo $_POST['amount'] + 500;
<?php while($price = $ps3 ->fetch()) { ?> //Problème ici:
} elseif ($_POST['amount'] <= 20000) { //Problème ici:
echo $_POST['amount'] + 2000; //Problème ici:
}
<?php } ?> //Problème ici
?>
EDIT : Ajout des BALISES DE CODE
3 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour, je suppose que c'est la grille tarifaire qui est enregistrée dans la base de données.
comment est structurée la base?
pourquoi fais-tu une boucle au lieu d'extraire immédiatement les information utiles? -
Mon soucis est le faite qu'en statique, ma calculatrice aura le script de calcul ci-dessous:
<?php if (isset($_POST['submit'])){ $montant = $_POST['amount']; if ($montant <= 10000) { echo $montant + 500; } else if ($montant <= 50000) { echo $montant + 1500; } else if ($montant <= 100000) { echo $montant + 2000; } else if ($montant <= 200000) { echo $montant + 2500; } else if ($montant <= 300000) { echo $montant + 3000; } else if ($montant <= 400000) { echo $montant + 4000; } else if ($montant <= 500000) { echo $montant + 5000; } else if ($montant <= 600000) { echo $montant + 6000; } else if ($montant <= 700000) { echo $montant + 7000; } else if ($montant <= 800000) { echo $montant + 8000; } else if ($montant <= 900000) { echo $montant + 9000; } else if ($montant <= 1000000) { echo $montant + 10000; } else{ } } ?>
Ce script permet de calculer les taxes à ajouter sur un montant, ces taxes varient en fonction du montant.
Le soucis est maintenant le fait de pouvoir donner le privilège aux utilisateurs de mon application de pouvoir modifier
les intervals et grille tarifaire sans pour autant me solliciter pour éditer le coude source.
C'est pourquoi j'ai pensé à mettre une boucle que de répété les syntaxes ci-dessus.
J'ai alors crée une table "grille_tarifaire" qui a l'architecture ci-desous:
- id
- IntervalA
- IntervalB
- Taxe
Exemple:
Record1
- id: 1
- IntervalA: 0
- IntervalB: 500
- Taxe: 50
Record2
- id: 2
- IntervalA: 501
- IntervalB: 1000
- Taxe: 100
etc.
Je me trouve confronté à un bug de vouloir insérer une déclaration PHP (de la boucle) dans du PHPEDIT : Ajout des BALISES DE CODE
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
puisque tu as une table dans une base de données, tu peux obtenir la taxe sans faire de boucle, en faisant une requête telle queselect Taxe from grille_tarifaire where montant >= IntervalA and montant <= IntervalB