Смотрю видео уроки по php. В общем делаем калькулятор. Пишу все так как у учителя. проверил уже раз 10 - не могу ошибку найти. код один в один. У него работает, у меня нет.
[code]<form action=\'\' metod \'POST\'>
<label>Число 1:</label><br />
<input name=\'num1\' value=\"<?php echo $n1?>\" type=\'text\'/><br />
<label>Оператор: </label><br />
<input name=\'operator\' value=\"<?php echo $op?>\" type=\'text\'/><br />
<label>Число 2: </label><br />
<input name=\'num2\' value=\"<?php echo $n2?>\" type=\'text\'/><br /><br />
<input type=\'submit\' value=\'Считать\'>
</form>
<?php
$output = \'\';
if($_SERVER[\'REQUEST_METHOD\']==\'POST\'){
$n1 = (int)$_POST[\'num1\'];
$n2 = (int)$_POST[\'num2\'];
$op = trim(strip_tags($_POST[\'operator\']));
$output = \"$n1 $op $n2 = \";
switch($op){
case \'+\' : $output .= $n1 + $n2;
break;
case \'-\' : $output .= $n1 - $n2;
break;
case \'*\' : $output .= $n1 * $n2;
break;
case \'/\' :
if($n2 === 0)
$output = \'Деление на 0 запрещено!\';
else
$output .= $n1 / $n2;
break;
default: $output = \"Неизвестный оператор \'$op\'\";
}
}
if($output){
echo \"<h3>Результат: $output</h3>\";
}
?>
[/code]
Добавлено 24.12.13 в 05:08:10:
Вот так по понятнее
<form action=\'\' metod \'POST\'>
<label>Число 1:</label><br />
<input name=\'num1\' value=\"<?php echo $n1?>\" type=\'text\'/><br />
<label>Оператор: </label><br />
<input name=\'operator\' value=\"<?php echo $op?>\" type=\'text\'/><br />
<label>Число 2: </label><br />
<input name=\'num2\' value=\"<?php echo $n2?>\" type=\'text\'/><br /><br />
<input type=\'submit\' value=\'Считать\'>
</form>
[code]<?php
$output = \'\';
if($_SERVER[\'REQUEST_METHOD\']==\'POST\'){
//TODO: Проверить, все ли поля пришли?
//Написать функции clean
$n1 = cleanInt($_POST[\'num1\']);
$n2 = cleanInt($_POST[\'num2\']);
$op = cleanStr($_POST[\'operator\']);
$output = \"$n1 $op $n2 = \";
switch($op){
case \'+\' : $output .= $n1 + $n2;
break;
case \'-\' : $output .= $n1 - $n2;
break;
case \'*\' : $output .= $n1 * $n2;
break;
case \'/\' :
if($n2 === 0)
$output = \'Деление на 0 запрещено!\';
else
$output .= $n1 / $n2;
break;
default: $output = \"Неизвестный оператор \'$op\'\";
}
}
if($output){
echo \"<h3>Результат: $output</h3>\";
}
?>[/code]
какая ошибка?
Добавлено 24.12.13 в 06:34:49:
<form action=\'\' metod \'POST\'> знак равенства где?
<form action=\'\' method=\'POST\'>
Не смотри эти уроки гавнокодерства..
if($_SERVER[\'REQUEST_METHOD\']==\'POST\'){ это бред, что мешает сделать if(isset($_POST)){
Добавлено 24.12.13 в 12:32:56:
$n1 = cleanInt($_POST[\'num1\']);
$n2 = cleanInt($_POST[\'num2\']);
$op = cleanStr($_POST[\'operator\']);
это не менее бредово, забудьте про php3 и php4 не смотрите это старьё
Дед Мороз, уроки этого года вообще то.
С каких пор Борисов стал говнокодером?
Дед Мороз, что то новее посоветовать можешь?