powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) Ошибка Notice: Undefined variable...line2
9 сообщений из 9, страница 1 из 1
(PHP) Ошибка Notice: Undefined variable...line2
    #33194826
Фотография Farkhod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если вопрос покажется глупым то я в PHP новичок.
Есть два файла calc.htm и calc.php

calc.htm:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<html>
<head>
    <title>Калькулятор</title>
</head>
<body>
<form method="post" action="calc.php">
<p>n1=<input type="Text" name="n1"></p>
<p>n2=<input type="Text" name="n2"></p>
<p><input type="Radio" name="calc" value="add"> +</p>
<p><input type="Radio" name="calc" value="sub"> -</p>
<p><input type="Radio" name="calc" value="mul"> *</p>
<p><input type="Radio" name="calc" value="div"> /</p>
<p><input type="Submit" value="Результат"</p>
</form>
</body>
</html>

calc.php:
<?
if($calc=="add"){ ;
$res=$n1+$n2;
}
if($calc=="sub"){ ;
$res=$n1-$n2;
}
if($calc=="mul"){ ;
$res=$n1*$n2;
}
if($calc=="div"){ ;
$res=$n1/$n2;
}
?>
<html>
<head>
<title>Калькулятор</title>
</head>
<body>

<p>Ответ: <? echo "$res"; ?></p>

</body>
</html>

Не понимаю где ошибка. При любых операциях (+, -, /, *) выходит ошибка:
Notice: Undefined variable: calc in C:\Inetpub\wwwroot\php\calc.php on line 2

Notice: Undefined variable: calc in C:\Inetpub\wwwroot\php\calc.php on line 5

Notice: Undefined variable: calc in C:\Inetpub\wwwroot\php\calc.php on line 8

Notice: Undefined variable: calc in C:\Inetpub\wwwroot\php\calc.php on line 11


Îòâåò:
Notice: Undefined variable: res in C:\Inetpub\wwwroot\php\calc.php on line 21
????
Спасибо.
...
Рейтинг: 0 / 0
(PHP) Ошибка Notice: Undefined variable...line2
    #33194905
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не передаются переменные! Проблема register_globals
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) Ошибка Notice: Undefined variable...line2
    #33195338
QueryMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<p>Ответ: <? echo "$res"; ?></p>
кавычки
<p>Ответ: <? echo $res; ?></p>
...
Рейтинг: 0 / 0
(PHP) Ошибка Notice: Undefined variable...line2
    #33195343
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 QueryMan
И причем здесь кавычки?
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) Ошибка Notice: Undefined variable...line2
    #33195473
Фотография Farkhod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4m@t!c Не передаются переменные! Проблема register_globals

хмм значит надо на calc.php написать так:

Код: plaintext
1.
import_request_variables("calc");
extract($calc);
???
Выходит ошибка:
Notice: import_request_variables() [function.import-request-variables]: No prefix specified - possible security hazard in C:\Inetpub\wwwroot\php\calc.php on line 2

Notice: Undefined variable: calc in C:\Inetpub\wwwroot\php\calc.php on line 3

Warning: extract() [function.extract]: First argument should be an array in C:\Inetpub\wwwroot\php\calc.php on line 3

Notice: Undefined variable: calc in C:\Inetpub\wwwroot\php\calc.php on line 4

4m@t!c пожалуйста подскажите как написать правильно как мне получить доступ к переменной calc ?
...
Рейтинг: 0 / 0
(PHP) Ошибка Notice: Undefined variable...line2
    #33195503
Фотография Groove
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
<?
	$n1 = isset($_POST['n1']) ? floatval($_POST['n1']) :  0 ;
	$n2 = isset($_POST['n2']) ? floatval($_POST['n2']) :  0 ;
	$calc = isset($_POST['calc']) ? $_POST['calc'] : '';
?>	
<html>
<head>
    <title>Куркулятор</title>
</head>
<body>
<center>
<form method="post" action="<?=$_SERVER['PHP_SELF'];?>">
<p>n1=<input type="Text" name="n1" value="<?=$n1;?>"></p>
<p>n2=<input type="Text" name="n2" value="<?=$n2;?>"></p>
<p><input type="Radio"  name="calc" value="add" <?= ('add'==$calc) ? 'checked' : ''; ?>> +</p>
<p><input type="Radio"  name="calc" value="sub" <?= ('sub'==$calc) ? 'checked' : ''; ?>> -</p>
<p><input type="Radio"  name="calc" value="mul" <?= ('mul'==$calc) ? 'checked' : ''; ?>> *</p>
<p><input type="Radio"  name="calc" value="div" <?= ('div'==$calc) ? 'checked' : ''; ?>> /</p>
<p><input type="Submit" name="submitname" value="Результат"</p>
</form>
</center>
</body>
</html>
<?	
	switch($calc){
	  case 'add':
		$res=$n1+$n2;
	  break;
	  
	  case 'sub':
		$res=$n1-$n2;
	  break;
	  
	  case 'mul':
		$res=$n1*$n2;
	  break;
	  
	  case 'div':
		$res=$n1/$n2;
	  break;

	  default:
	  $res= 0 ;
	}
	if(isset($_POST['submitname'])) print sprintf('<h1>Ответ: %8.3f</h1>',$res);
?>
...
Рейтинг: 0 / 0
(PHP) Ошибка Notice: Undefined variable...line2
    #33195699
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>4m@t!c пожалуйста подскажите как написать правильно как мне получить доступ к переменной calc ?
Не смотря на то, что вы получили готовое решение - рекомендую читать ту статью до просветления. Что бы знать, что есть суперглобальные массивы, как они называются, для чего они нужны и как с ними работать.
ИМХО, готовый код - медвежья услуга.
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) Ошибка Notice: Undefined variable...line2
    #33205099
QueryMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4m@t!c 2 QueryMan
И причем здесь кавычки?
---------------------------------------
Артисты не приехали, приехали цыгане

Notice: Undefined variable: res in C:\Inetpub\wwwroot\php\calc.php on line 21
<p>Ответ: <? echo "$res"; ?></p> will produce $res
кавычки
<p>Ответ: <? echo $res; ?></p> will produce value of $res

calc is array and when form is submitted it has 4 members
you need to figure out what is the value of the checked item otherwise

condition
<?
if($calc=="add"){ ;
$res=$n1+$n2;
}
if($calc=="sub"){ ;
$res=$n1-$n2;
}
if($calc=="mul"){ ;
$res=$n1*$n2;
}
if($calc=="div"){ ;
$res=$n1/$n2;

never happens and $calc is not defined.
...
Рейтинг: 0 / 0
(PHP) Ошибка Notice: Undefined variable...line2
    #33205245
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
<p>Ответ: <? echo "$res"; ?></p> will produce $res
кавычки 
<p>Ответ: <? echo $res; ?></p> will produce value of $res
You are wrong.
Just read and understand this and this .
You should know, that variables produce value in double quote.
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) Ошибка Notice: Undefined variable...line2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]