Aidez-moi SVP à modifier mon code qui est censé calculer en PHP pour qu'il traite les calculs les plus complexe

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Aidez-moi SVP à modifier mon code qui est censé calculer en PHP pour qu'il traite les calculs les plus complexe

Re: Aidez-moi SVP à modifier mon code qui est censé calculer en PHP pour qu'il traite les calculs les plus complexe

par chegmarco » 21 mars 2021, 21:32

Je vais l'essayer. Merci beaucoup.

Re: Aidez-moi SVP à modifier mon code qui est censé calculer en PHP pour qu'il traite les calculs les plus complexe

par or 1 » 20 mars 2021, 23:23

Aidez-moi SVP à modifier mon code qui est censé calculer en PHP pour qu'il traite les calculs les plus complexe

par chegmarco » 20 mars 2021, 23:14

Bonsoir.

J'essaie de faire une calculatrice en PHP à partir des données entrées depuis un champs input. C'est-à-dire que je souhaiterais vérifier si ce qui est entré via le champs du formulaire HTML est un calcul, que cela procède au calcul demandé via le champs du formulaire en Action.

Voici mon Code:

Code : Tout sélectionner

if (stripos($term, '+') !== false) { $termArray = explode("+", $term); if (is_numeric($termArray[0]) && is_numeric($termArray[2])) { $calcResult = $termArray[0] + $termArray[2]; } else if (is_numeric($termArray[0]) && is_numeric($termArray[4])) { $calcResult = $termArray[0] + $termArray[4]; } } elseif (stripos($term, '-') !== false) { $termArray = explode("-", $term); if (is_numeric($termArray[0]) && is_numeric($termArray[2])) { $calcResult = $termArray[0] - $termArray[2]; } else if (is_numeric($termArray[0]) && is_numeric($termArray[4])) { $calcResult = $termArray[0] - $termArray[4]; } } elseif (stripos($term, '*') !== false) { $termArray = explode("*", $term); if (is_numeric($termArray[0]) && is_numeric($termArray[2])) { $calcResult = $termArray[0] * $termArray[2]; } else if (is_numeric($termArray[0]) && is_numeric($termArray[4])) { $calcResult = $termArray[0] * $termArray[4]; } } elseif (stripos($term, 'x') !== false) { $termArray = explode("x", $term); if (is_numeric($termArray[0]) && is_numeric($termArray[2])) { $calcResult = $termArray[0] * $termArray[2]; } else if (is_numeric($termArray[0]) && is_numeric($termArray[4])) { $calcResult = $termArray[0] * $termArray[4]; } } elseif (stripos($term, '/') !== false) { $termArray = explode("/", $term); if (is_numeric($termArray[0]) && is_numeric($termArray[2])) { $calcResult = $termArray[0] / $termArray[2]; } else if (is_numeric($termArray[0]) && is_numeric($termArray[4])) { $calcResult = $termArray[0] / $termArray[4]; } }
Mon problème, c'est que je suis perdu dans mon propre code. Je me demande en fait, si l'utilisateur cherchait à faire un calcul un peu plus complexe comme par exemple: 5+5-2+20/3 ???

Comment modifier mon code pour qu'il réponde à de tel calcul complexe sachant que ce que moi j'ai essayé de faire dans mon code ci-dessus, est d'abord de vérifier si ce qui est entré dans l'input est contient à chaque fois un signe +, -, *, x, ou encore /. Si oui, je convertis en un tableau via la fonction PHP explode l'entrée représentée par la variable [c]$term[/c] séparée à chaque fois par le signe arithmétique (+, -, *, x, ou /) trouvé dans l'entrée et je procède au calcul de chaque valeur du tableau départagé. De deux, je n'ai réussi à traiter que deux (2) à calculer à chaque fois.

Mais je sens qu'il y a mieux à faire et ce que j'ai fait ne peut rien résoudre des calcul complexe dans le cas où l'entrée du formulaire [c]input[/c] serait par exemple un truc du genre: (78/2-)*12+5.

Aidez-moi s'il vous plaît à modifier mon code afin de l'adapter au traitement des calcul les plus complexe.