I have a lab project that requires to solve a simple polynomial equation (a x^2+b x+c) with a,b,c given in a form. I implemented this code, but it seems that even the html script is not working. I really need your help because I spent almost a day trying to find the mistake, but I can't find anything wrong.
<!DOCTYPE html>
<html>
<meta charset="utf-8"/>
<head>
<title>
Exercise 2
</title>
</head>
<body>
<? if ((!isset($_POST['submit'])))
{?>
<h2>Please fill the trinomial coefficients a*x^2+b*x+c=0</h2> <br>
<form method="post">
a= <input type="text" name="a" /> <br>
b= <input type="text" name="b" /> <br>
c= <input type="text" name="c" /> <br>
<input type="submit" value="Solve the equation" />
</form>
<?php
}
else
{
$a=$_POST["a"];
$b=$_POST["b"];
$c=$_POST["c"];
if ($a!=0)
{
$d=pow($b,2)-(4*a*c);
if ($d>=0)
{
$d=sqrt($d);
x1=(-$b-$d)/(2*$a);
x2=(-$b+$d)/(2*$a);
if (x1=x2)
{
echo ("1 solution: ". $x1);
}
else
{
echo ("Solutions x1 and x2 " .$x1. ", ". $x2);
}
}
else
{
$d=sqrt(-$d);
x1=-b/(2*$a);
x2=-$d;
x3=$d;
echo ("The trinomial has two complex solutions x1 and x2, which are: x1=". x1. " + ". x2. "*i and x2=". x1. " + ". x3. "*i");
}
}
else
{
echo ("This is not a trinomial");
}
}
?>
</body>
</html>
This works:
<!DOCTYPE html>
<html>
<meta charset="utf-8"/>
<head>
<title>
Exercise 2
</title>
</head>
<body>
<?php if ((!isset($_POST['submit'])))
{?>
<h2>Please fill the trinomial coefficients a*x^2+b*x+c=0</h2> <br>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
a= <input type="text" name="a" /> <br>
b= <input type="text" name="b" /> <br>
c= <input type="text" name="c" /> <br>
<input type="submit" name="submit" value="Solve the equation" />
</form>
<?php
}
else
{
$a=$_POST["a"];
$b=$_POST["b"];
$c=$_POST["c"];
if ($a!=0)
{
$d=pow($b,2)-(4*$a*$c);
if ($d>=0)
{
$d=sqrt($d);
$x1=(-$b-$d)/(2*$a);
$x2=(-$b+$d)/(2*$a);
if ($x1==$x2)
{
echo ("1 solution: ". $x1);
}
else
{
echo ("Solutions x1 and x2 " .$x1. ", ". $x2);
}
}
else
{
$d=sqrt(-$d);
$x1=-$b/(2*$a);
$x2=-$d;
$x3=$d;
echo ("The trinomial has two complex solutions x1 and x2, which are: x1=". $x1. " + ". $x2. "*i and x2=". $x1. " + ". $x3. "*i");
}
}
else
{
echo ("This is not a trinomial");
}
}
?>
</body>
</html>
Fixed some code made a comment on one thing that should be noted also cleaned code.
<?php
if(isset($_POST['submit'])){ // had a syntax error with an extra ( before isset also instead of checking if its not set just check if it is set makes it faster
//Submit has been pressed
$a=$_POST["a"];
$b=$_POST["b"];
$c=$_POST["c"];
if ($a!=0){
$d=pow($b,2)-(4*a*c);
if ($d>=0){
$d=sqrt($d);
$x1=(-$b-$d)/(2*$a);
$x2=(-$b+$d)/(2*$a);
if ($x1=$x2){
echo ("1 solution: ". $x1);
} else {
echo ("Solutions x1 and x2 " .$x1. ", ". $x2);
}
} else {
$d=sqrt(-$d);
$x1=-$b/(2*$a);
$x2=-$d;
$x3=$d;
echo ("The trinomial has two complex solutions x1 and x2, which are: x1=". x1. " + ". x2. "*i and x2=". x1. " + ". x3. "*i");
}
}
} else {
//Submit has not been pressed yet
}
?>
<html>
<meta charset="utf-8"/>
<head>
<title>
Exercise 2
</title>
</head>
<body>
<h2>Please fill the trinomial coefficients a*x^2+b*x+c=0</h2> <br>
<form method="post">
a= <input type="text" name="a" /> <br>
b= <input type="text" name="b" /> <br>
c= <input type="text" name="c" /> <br>
<input type="submit" value="Solve the equation" />
</form>
</body>
</html>
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.