찾다

 >  Q&A  >  본문

처음 접속 시 오류 메시지가 나타나며, 버튼을 클릭하면 사라집니다.

<meta charset="utf8">
<p>일반 및 윤년 계산기</p>
<form>
<input type="text" name="num1">
< type="submit" value="판결">
</form>]PS2RRFF5669X7~3S7N}XRR.pngCU}AW~B7NU4HAI$ZL_H%M5R.png

<?php
$num1=$_GET['num1'];
if(!is_numeric($num1))
{ echo '연도를 정확하게 입력해주세요';
종료;}
if($num1%4==0 and $num1%100!==0 or $num1%400==0)
{echo $num1.'연도 윤년';}
else
{echo $num1.'해는 평년';}

?>

红红火火恍恍惚惚红红火火恍恍惚惚1880일 전1356

모든 응답(7)나는 대답할 것이다

  • 海风

    海风2019-10-09 11:09:14

    $_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.'올해는 평년입니다';}

    }

    ?>

    회신하다
    1
  • 红红火火恍恍惚惚

    알겠습니다, 감사합니다, 보스.

    红红火火恍恍惚惚 · 2019-10-09 22:41:12
    红红火火恍恍惚惚

    isset은 오류를 보고하고 비어 있으면 오류를 보고하지 않는 이유는 무엇입니까?

    红红火火恍恍惚惚 · 2019-10-09 23:07:47
    红红火火恍恍惚惚

    사장님, 방금 시도해 봤는데 num1이 비어 있지 않으면 $num1=$_GET['num1'];을 실행하라는 결론이 나왔습니다. num1이 비어 있으면 중괄호 안의 코드가 실행되지 않습니다. 내 결론이 맞는지, 아니면 틀린지?

    红红火火恍恍惚惚 · 2019-10-09 23:17:50
    海风

    설명서를 확인하세요. 빈 함수는 매개변수가 비어 있는지 확인합니다. 매개변수가 비어 있으면 빈 함수가 true를 반환합니다. 따라서 num1이 비어 있으면 empty('num1')는 true를 반환하고, !empty('num1')은 false를 반환하므로 중괄호 안의 코드는 실행되지 않습니다.

    海风 · 2019-10-10 09:22:57
  • 卢小强

    卢小强2019-10-08 11:52:19

    처음 입력할 때 $num1의 값을 출력할 수 있습니다. NULL인 것 같은데, NULL은 연산으로 사용할 수 없습니다

    회신하다
    1
  • 红红火火恍恍惚惚

    실제로 null입니다. 이 문제를 해결하는 방법은 무엇입니까?

    红红火火恍恍惚惚 · 2019-10-08 20:13:50
  • 취소회신하다