Здравствуйте, мне нужно создать простой скрипт, который будет делать возведение в степень числа, которое я дам, а также его сообщите мне, если я не дам число или я оставлю пустое место.математика - exponentation in php - простой скрипт
Я сделал что-то подобное, но он показывает начало, что «Все поля не должны быть пустыми», и если я нажму «вычислить без цифр», я получу «Неверные данные», и это должно быть «Все поля не должны быть пустым "
Может ли кто-нибудь исправить это или сказать мне, где ошибка?
Извините, если что-то не понятно
Вот мой сценарий:
<body>
<FORM action="<?php echo $_SERVER['PHP_SELF']; ?>" method="get">
Base: <input type="text" name="number1" />
Exponent : <input type="text" name="number2" />
<input type="submit" value="compute!" name="Compute"/>
</form>
<?php
if (isset($_GET ['number1']) || isset($_GET['number2'])) {
if (is_numeric($_GET['number1']) && is_numeric($_GET['number2'])) {
echo "{$_GET['number1']}^{$_GET['number2']} = ";
echo pow($_GET['number1'], $_GET['number2']);
echo "<BR>";
}
else
{
echo "Wrong data<BR>";
}
}
else
{
echo "All fields must not be empty<BR>";
}
?>
<br />
<a href="index.php">Return!</a>
</body>
Отступ кода делают сделать его легче читать, и легче увидеть, что каждый из вложенной 'if' заявления на самом деле делает –
, если в сомневайтесь в версии, используйте exp (b * ln (a)) для вычисления a^b. Кроме того, вы должны выполнять только расчет, когда установлены как число 1, так и число2 (используя && вместо ||). И проверьте значение кнопки отправки, чтобы увидеть, было ли вообще представлено что-либо. – Bart
Обратите внимание, что 'isset' не обязательно делает то, что вы ожидаете .... оба' $ _GET ['number1'] 'и' $ _GET ['number2'] 'are __" set "__ (они существуют и aren ' t NULL), но они все равно могут содержать пустые строки –