#php
#php
Вопрос:
я написал этот код. в этом коде пользователь угадывает число, затем программа сверяет число с номером, который я ему ввожу, и печатает соответствующее сообщение. когда я запускаю программу, она показывает welcome, что это правда, но когда я ввел в нее number, в выводе всегда мало что отображается, но это неправда.
$val = '42';
$gues ;
if(!isset($gues))
$mess = "welcome<br>";
elseif($gues > $val)
$mess = "bigr<br>";
elseif($gues < $val)
$mess = "little<br>";
else
$mess = "win<br>";
$gues = @(int) $gues;
?>
<html>
<head><title>bazi riazi</title></head>
<body>
<h1>
<?php print $mess;
?>
</h1>
<form method="POST">
type you gues here:<input type="text" name='gues'>
</form>
</body>
</html>
Ответ №1:
Как ваш var $gues
получает значение из формы? Вы использовали $_POST['gues']
первым?
Скрипт всегда печатает, little
потому что, вероятно, переменная $gues
не была инициализирована никаким значением (по умолчанию, я полагаю, равно нулю …).
Комментарии:
1. попробуйте заменить ` $ gues;` на
$gues = $_POST['gues'];
Ответ №2:
Этот код должен работать (хотя и непроверенный):
$val = '42';
$gues = int($_POST['gues']);
if (!isset($gues))
{
$mess = "welcome<br>";
}
elseif($gues > $val)
{
$mess = "bigr<br>";
}
elseif($gues < $val)
{
$mess = "little<br>";
}
else
{
$mess = "win<br>";
}