php经典例子的问题

qianxy1973 2010-11-22 08:08:07
针对猩猩的测试那个例子,我输出了$second[0],$second[1],$second[2],$second[3],结果是正确的,可是count($second)或者count($second[])输出结果都是1,查资料说这样的结果说明$second不是数组,那么怎么定义这个数组?另外我目前的写法怎么求$second中单元的个数?
代码如下:
<html>
<head>
<title>调查表</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#FFFFFF">
<?php
function display_form() {
global $PHP_SELF;
?>
<FORM action="<?php echo $PHP_SELF;?>" METHOD=post>
名字:<INPUT TYPE=TEXT NAME="name"><BR>
单项选择:
<INPUT TYPE=RADIO NAME="first" VALUE="我很笨">我很笨
<INPUT TYPE=RADIO NAME="first" VALUE="我非常笨">我非常笨
<INPUT TYPE=RADIO NAME="first" VALUE="我简直就是个傻冒"> 我简直就是个傻冒 <br/>
多项选择:
<INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢打蓝球">我喜欢打蓝球
<INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢游泳">我喜欢游泳
<INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢跳舞">我喜欢跳舞
<INPUT TYPE=CHECKBOX NAME="second[]" VALUE="我喜欢爬山">我喜欢爬山
<INPUT TYPE=HIDDEN NAME="stage" VALUE= "results">
<p>
<INPUT TYPE=SUBMIT VALUE= "谢谢">
</p>
</FORM>
<?php
}
?>

<?php
function process_form() {
global $name ;
global $first;
global $second;
$second = $_POST['second'];
if ($first == '我很笨') {
$first_message = '你不笨。';
}
elseif ($first == '我非常笨') {
$first_message = '你很聪明。';
}
else {
$first_message = '你简直就象是一个聪明的人了。';
}
$favorite_second = count($second);
if ($favorite_second = 1) {
$second_message = '但你很快就会在动物园里死去,忏悔吧!';
}
elseif ($favorite_second > 1 && $favorite_second <4) {
$second_message = '你是只爱运动的的猩猩。';
}
else {
$second_message = '你运动的太多了,对猩猩来讲已经过量,你准备棺材吧,:(';
}
echo "这是一项针对猩猩的测试:<br/><br/>";
echo "你好! 你的名字叫:$name<br/><br/>";
echo "你的测验结果是。。。。。$first_message<br/>$second_message";
echo $second[2];
}
?>
<?php
if (empty($stage)) {
display_form();
}
else {
display_form();
process_form();
}
?>
</body>
</html>
...全文
122 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
gaozhen1990 2010-11-22
  • 打赏
  • 举报
回复


$favorite_second = count($second); if ($favorite_second = 1) {
$second_message = '但你很快就会在动物园里死去,忏悔吧!';
}

就是数组。 你打印这个数组看看为啥总是1。
qianxy1973 2010-11-22
  • 打赏
  • 举报
回复
哎 一个低级错误就浪费了我这么多时间。。。
if ($favorite_second = 1)应该是
if ($favorite_second == 1)
xuzuning 2010-11-22
  • 打赏
  • 举报
回复
不存在你说的现象
qianxy1973 2010-11-22
  • 打赏
  • 举报
回复
难道20分太少吗?
PHP5+MySQL 网站开发实例精讲》全面、详细地介绍了基于PHP和MySQL的动态网络开发技术的原理和基础编程知识。全书共分为四篇18章,以“PHP基础知识→MySQL数据库基础知识→PHP高级开发→常用模块编程与综合案例开发”为线索具体展开,不仅包括PHP开发环境的搭建、PHP的基本语法、PHP中的常用函数、在MySQL中创建数据库和数据表,以及对MySQL数据库进行查询、删除、更新和排序等基础开发知识,还包括在PHP中创建图像、使用会话等较深入的开发内容,并在“常用模块编程和综合案例开发”篇中给出了常用模块(如通信录模块、计数器模块、文件上传模块、图片浏览模块和聊天室模块等)的开发方法,以及文件管理系统、投票系统、影碟管理系统、新闻发布系统和网上购物商城5个综合案例的开发全过程。  全书内容由浅入深,充分考虑了PHP学习者的特点,并在配套光盘中提供了书中实例的全部源代码,以方便读者举一反三,编写出适合自己的程序。 《PHP5+MySQL 网站开发实例精讲》不仅合适PHP技术的初学者,还能够帮助有一定编程经验的PHP开发人员解决开发过程中遇到的实际问题。《PHP5+MySQL 网站开发实例精讲》可作为广大PHP学习者的自学用书,或高等院校相关专业的教材和辅导用书。 显示更多 显示更少 --------------------------------------------------------------------------------

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧