検索

ホームページ  >  に質問  >  本文

初回入力時はエラーメッセージが表示されますが、ボタンをクリックするとエラーメッセージは消えます。

<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 および $num1 0!==0 または $num1@0==0)
{echo $num1.'今年はうるう年です';}
else
{echo $num1 .'年 通常の年です';}

?>

红红火火恍恍惚惚红红火火恍恍惚惚1876日前1353

全員に返信(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' ];######もし私が

    返事
    1
  • 红红火火恍恍惚惚

    わかりました、ありがとう、ボス。

    红红火火恍恍惚惚 · 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関数は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
  • キャンセル返事