PDA

View Full Version : Temparature conversion with php



dcr33
09-11-2011, 11:13 AM
The following code is not working .It is giving an error in the last line. But I have checked the code repeatedly & I can't find any.
Any advice pls?

<?php
$f=$c= "";
if(isset($_POST['f'])) $f=sanitizeString($_POST['f']);
if(isset($_POST['c'])) $c=sanitizeString($_POST['c']);

if($f!= '')
{
$c=intval((5/9)*($f-32));
$out="$f degree farenheit equals $c degree celsius";
}
elseif($c!= '')
{
$f=intval((9/5)* $c + 32);
$out="$c degree celsius equals $f degree farenheit";
}
else $out= "";


echo <<<_END
<html><head><title>Temparature Converter</title>
</head><body><pre>
Enter either Fahrenheit or Celsius and click on Convert
<b>$out</b>
<form method="post" action="convert.php">
Fahrenheit <input type="text" name="f" size="7"/>
Celsius <input type="text" name="c" size="7"/>
<input type="submit" value="convert" />
</form>
</pre>
</body>
</html>
_END;

function sanitizeString($var)
{
$var=stripslashes($var);
$var=htmlentities($var);
$var=strip_tags($var);
return $var;
}
?>

JShor
09-11-2011, 04:04 PM
You need to use your end-of-file string terminator at the beginning of a line with no characters before it. That includes spaces.

Wrong:


echo <<<_END
string here
_END;


Right:


echo <<<_END
string here
_END;


This code should work:


<?php
$f=$c= "";
if(isset($_POST['f'])) $f=sanitizeString($_POST['f']);
if(isset($_POST['c'])) $c=sanitizeString($_POST['c']);

if($f!= '')
{
$c=intval((5/9)*($f-32));
$out="$f degree farenheit equals $c degree celsius";
}
elseif($c!= '')
{
$f=intval((9/5)* $c + 32);
$out="$c degree celsius equals $f degree farenheit";
}
else $out= "";


echo <<<_END
<html><head><title>Temparature Converter</title>
</head><body><pre>
Enter either Fahrenheit or Celsius and click on Convert
<b>$out</b>
<form method="post" action="convert.php">
Fahrenheit <input type="text" name="f" size="7"/>
Celsius <input type="text" name="c" size="7"/>
<input type="submit" value="convert" />
</form>
</pre>
</body>
</html>
_END;

function sanitizeString($var)
{
$var=stripslashes($var);
$var=htmlentities($var);
$var=strip_tags($var);
return $var;
}
?>

dcr33
09-11-2011, 04:12 PM
Thanks Brother ,it works now.
:)