2026-04-01 08:25:18 +02:00
|
|
|
<?php
|
2026-04-15 15:34:46 +02:00
|
|
|
|
|
|
|
|
$op1Saisi = filter_input(INPUT_POST, 'op1', FILTER_UNSAFE_RAW);
|
|
|
|
|
$op2Saisi = filter_input(INPUT_POST, 'op2', FILTER_UNSAFE_RAW);
|
|
|
|
|
$operationSaisie = filter_input(INPUT_POST, 'operation', FILTER_UNSAFE_RAW);
|
|
|
|
|
|
|
|
|
|
$op1Saisi = is_string($op1Saisi) ? trim($op1Saisi) : '';
|
|
|
|
|
$op2Saisi = is_string($op2Saisi) ? trim($op2Saisi) : '';
|
|
|
|
|
$operationSaisie = is_string($operationSaisie) ? trim($operationSaisie) : '+';
|
|
|
|
|
|
|
|
|
|
$operationsAutorisees = ['+', '-', 'x', '/'];
|
|
|
|
|
$operation = in_array($operationSaisie, $operationsAutorisees, true) ? $operationSaisie : '+';
|
|
|
|
|
|
|
|
|
|
$resultat = null;
|
|
|
|
|
$messageErreur = '';
|
|
|
|
|
$aCalcule = false;
|
|
|
|
|
|
|
|
|
|
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|
|
|
|
$op1 = filter_var($op1Saisi, FILTER_VALIDATE_FLOAT);
|
|
|
|
|
$op2 = filter_var($op2Saisi, FILTER_VALIDATE_FLOAT);
|
|
|
|
|
|
|
|
|
|
if ($op1 === false || $op2 === false) {
|
|
|
|
|
$messageErreur = 'Veuillez saisir deux nombres valides.';
|
|
|
|
|
} elseif (!in_array($operation, $operationsAutorisees, true)) {
|
|
|
|
|
$messageErreur = 'Veuillez choisir une opération valide.';
|
|
|
|
|
} elseif ($operation === '/' && (float) $op2 == 0.0) {
|
|
|
|
|
$messageErreur = 'La division par zéro est impossible.';
|
|
|
|
|
} else {
|
|
|
|
|
$aCalcule = true;
|
|
|
|
|
|
|
|
|
|
switch ($operation) {
|
|
|
|
|
case '+':
|
|
|
|
|
$resultat = $op1 + $op2;
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case '-':
|
|
|
|
|
$resultat = $op1 - $op2;
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case 'x':
|
|
|
|
|
$resultat = $op1 * $op2;
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case '/':
|
|
|
|
|
$resultat = $op1 / $op2;
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
default:
|
|
|
|
|
$messageErreur = 'Veuillez choisir une opération valide.';
|
|
|
|
|
$aCalcule = false;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$valeurOp1 = $aCalcule ? (string) $resultat : $op1Saisi;
|
|
|
|
|
$valeurOp2 = $op2Saisi;
|