Heim >Backend-Entwicklung >PHP-Tutorial >又有有关问题出现了-

又有有关问题出现了-

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-13 11:52:21982Durchsuche

又有问题出现了-。-

本帖最后由 u014270083 于 2014-03-23 00:17:51 编辑
<?php<br />require 'index.html';	//require 与 include 的区别在于前者出错,不再运行程序<br />function test(){<br />	if(isset ($_POST[c]) && isset ($_POST[d])){<br />		$a=$_POST[c];<br />		$b=$_POST[d];<br />		}<br />	if($a<$b){<br />		return 1;		//return 返回函数值之后,终止函数脚本运行,不再运行余下语句<br />		}<br />	return -1;<br />	}<br />	$res=test();<br />	if($res==1){<br />		echo '$x<$y';<br />		}<br />	else{<br />		echo '$x>$y';<br />		}<br />?>



话说,以上代码似乎没有什么错误吧-。-,这个错误提示具体是什么原因?还是PHP服务器设置的问题?期待高手,俺是新手

$_POST[c] 修改成 $_POST['c']之后,提示是这样的:

何解?
------解决方案--------------------
$_POST["c"]
$_POST["d"]
------解决方案--------------------
$_POST[c]都加引号
------解决方案--------------------
除非你屏蔽掉 E_NOTICE 级别错误检查
否则
数组的关联键需要用引号括起 $_POST["c"]、$_POST["d"]
$a、$b 的赋值在条件分支内,如果不是表单提交则他们就不存在


------解决方案--------------------
正确的写法是
<?php<br />require 'index.html'; <br />function test() {<br />  $a = $b = 0;<br />  if(isset ($_POST['c']) && isset ($_POST['d'])){<br />    $a=$_POST['c'];<br />    $b=$_POST['d'];<br />  }<br />  if($a<$b){<br />    return 1;<br />  }<br />  return -1;<br />}<br />$res=test();<br />if($res==1){<br />  echo '$x<$y';<br />}else{<br />  echo '$x>$y';<br />}<br />?>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn