How can I remove division by zero message in php and also improve my code?
Get the solution ↓↓↓Hello i am a complete beginner , I only know fundamentals of Html,CSS and PHP, what can I do to fix this issue (division by zero error and https://prnt.sc/1p4kw8a )and also to improve my code .the second issue is apparent when I submit it with empty textboxes Thank you in advance
<!DOCTYPE HTML>
<html>
<head> <meta charset="utf-8">
<title> Calculator </title>
</head>
<body>
<form action="calculator.php" method="post">
Firt number - <input type="number" step="0.1" id="number1" name="number1"><br>
Second number - <input type="number" step="0.1" id="number2" name="number2"><br>
Option - <select name="operator">
<option value="add" name="gruppe1">+</option>
<option value="subtract" name="gruppe1">-</option>
<option value="times" name="gruppe1" >x</option>
<option value="divide" name="gruppe1">/</option>
<option value="caret" name="gruppe1">^</option>
</select><br>
<input type="submit">
</form>
<?php
$gruppe1 = $_POST["operator"];
$number1 = $_POST["number1"];
$number2 = $_POST["number2"];
if($_POST["operator"] == "add"){
echo $number1 + $number2;
} elseif($_POST["operator"] == "subtract"){
echo $number1 - $number2;
} elseif($_POST["operator"] == "times"){
echo $number1 * $number2;
} elseif($_POST["operator"] == "divide"){
echo $number1 / $number2;
} elseif($_POST["operator"] == "caret"){
echo $number1 ** $number2;
}
?>
</body>
</html>
Answer
Solution:
<!DOCTYPE HTML>
<html>
<head> <meta charset="utf-8">
<title> Calculator </title>
</head>
<body>
<form action="calculator.php" method="post">
Firt number - <input type="number" step="0.1" id="number1" name="number1"><br>
Second number - <input type="number" step="0.1" id="number2" name="number2"><br>
Option - <select name="operator">
<option value="add" name="gruppe1">+</option>
<option value="subtract" name="gruppe1">-</option>
<option value="times" name="gruppe1" >x</option>
<option value="divide" name="gruppe1">/</option>
<option value="caret" name="gruppe1">^</option>
</select><br>
<input type="submit">
</form>
<?php
$gruppe1 = $_POST["operator"];
$number1 = $_POST["number1"];
$number2 = $_POST["number2"];
if($_POST["operator"] == "add"){
echo $number1 + $number2;
} elseif($_POST["operator"] == "subtract"){
echo $number1 - $number2;
} elseif($_POST["operator"] == "times"){
echo $number1 * $number2;
} elseif($_POST["operator"] == "divide"){
echo $result = $number2 != 0 ? $number1 / $number2 : "Error";
} elseif($_POST["operator"] == "caret"){
echo $number1 ** $number2;
}
?>
</body>
Share solution ↓
Additional Information:
Link To Answer People are also looking for solutions of the problem: warning: a non-numeric value encountered in
Didn't find the answer?
Our community is visited by hundreds of web development professionals every day. Ask your question and get a quick answer for free.
Similar questions
Find the answer in similar questions on our website.
Write quick answer
Do you know the answer to this question? Write a quick response to it. With your help, we will make our community stronger.