登录  /  注册
第一次进会有错误信息,点一下按钮就消失了
红红火火恍恍惚惚
红红火火恍恍惚惚 2019-10-08 00:08:23
[PHP讨论组]

<meta charset="utf8">
<p>平年、闰年计算器</p>
<form>
   <input type="text" name="num1">
   <input type="submit" value="判断">
</form>]PS2RRFF5669X7~3S7N}XRR.pngCU}AW~B7NU4HAI$ZL_H%M5R.png

<?php
$num1=$_GET['num1'];
if(!is_numeric($num1))
{echo '请正确输入年份';
exit;}
if($num1%4==0 and $num1%100!==0 or $num1%400==0)
{echo $num1.'年是闰年';}
else
{echo $num1.'年是平年';}

?>

红红火火恍恍惚惚
红红火火恍恍惚惚

全部回复(2)
海风

第一次进入时$_GET['num1']不存在,给一个量变赋不存在的值是会出错的,所以给$num1一个初始值,如:$num1 = isset($_GET['num1']) ? $_GET['num1'] : 2019;

如果不想一刷新就出来2019年是平年这句话,程序修改如下:

<?php

if (!empty($_GET['num1'])){

$num1=$_GET['num1'];

if(!is_numeric($num1))
{echo '请正确输入年份';
exit;}
if($num1%4==0 and $num1%100!==0 or $num1%400==0)
{echo $num1.'年是闰年';}
else
{echo $num1.'年是平年';}

}

?>

  • 回复 好的 谢谢大佬
    红红火火恍恍惚惚 作者 2019-10-09 22:41:12
  • 回复 为什么isset会报错 empty不会报错呢
    红红火火恍恍惚惚 作者 2019-10-09 23:07:47
  • 回复 大佬,我刚才试验了一下 感觉结论是 当num1不为空 就执行$num1=$_GET['num1']; num1如果为空就不执行大括号内的代码 我这个结论是正确的还是错误的
    红红火火恍恍惚惚 作者 2019-10-09 23:17:50
  • 回复 查一下手册,empty函数判断参数是否为空,如果参数为空则empty函数返回值为ture。因此,如果num1为空,empty('num1')返回真,!empty('num1')为假,故大括号内的代码不会执行。
    海风 作者 2019-10-10 09:22:57
卢小强

第一次进的时候 $num1的值 你可以打印出来看一下  我估计是NULL,NULL不能作为运算吧

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号