Твой софтовый форум > WeB - Developments > Apache (php + Perl) + FTP + MySQL > PHP

посмотрите скрипт, пожалуйста

,

Помогите новичку

Дата публикации: 30.10.2008 - 15:16
ayax
Вот зашёл на один из обучающих php сайт и попытался по примеру написать скрипт простейшего калькулятора, вот скрипт:




Калькулятор




function show()
{
global $action, $first, $second;
?>








Первое число

Второе число (Степень, процент)





} //конец функции show()






function calc()
{
global $action, $result, $first, $second;
switch($action)
{
case "sum": $result = $first+$second; break;
case "min": $result = $first-$second; break;
case "mult": $result = $first*$second; break;
case "dev":
if (!$second) /* если второе число равно "0" или вообще не введено */
{
exit("Извините, программа не может выполнить действие: на ноль делить нельзя");
}
$result=$first/$second; break;
case "procent": $result = $first*($second/100); break;
case "stepen": $result = pow($first, $second); break;
case "koren": $result = pow($first,0.5); break;
return $result;
}
?> //заканчиваем оператор switch
Результат Вашего действия равен
//вывод результата


} //конец функций calc()

if ($action) calc(); else show();

?>






Но при нажатии на кнопку "выполнить" почему то не срабатывает блок function calc() и вместо решения снова появляется форма ввода начальных данных...Может кто-нибудь поможет понять в чём дело?
middleman
У тебя значения из GET массива не читаются.
Попробуй перед
Code
if ($action) calc(); else show();
вставить строки
Code
$action=$_GET['action'];
$result=$_GET['result'];
$first=$_GET['first'];
$second=$_GET['second'];

а строку
Code
global $action, $first, $second;

Убрать из каждой функции и вынести перед этими тремя строками.
ayax
Спасибо большое, заработало smile.gif


Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке: посмотрите скрипт, пожалуйста
SoftoRooM © 2004-2024