php計算フォーム

簡単な計算フォームを作ってみた


http://www35.atpages.jp/kirix/ninja/original/calc/calc.html←確認ページ

html
<!DOCTYPE HTML>
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>計算</title>
<body>
<form action="calc.php" name="form1" method="post">
<p><input type="text" name="txtA" size="15" value="">
<select name="operator">
<option value="+"></option>
<option value="-"></option>
<option value="*">×</option>
<option value="/">÷</option>
</select>
<input type="text" name="txtB" size="15" value=""> =
<input type="submit" value="計算する"></p>
<p><input type="reset" value="クリア"></p>	
</form>
</body>
</html>
php
<?php
  $a = mb_convert_kana($_POST['txtA'] , 'a' , 'UTF-8');
  $b = mb_convert_kana($_POST['txtB'] , 'a' , 'UTF-8');
  $ope = $_POST['operator'];
	
  if ($a == "") {
    echo "<span>※半角数字を入力してください</span>";
    $a = ""; $b = "";
  } else if ($b == "") {
    echo "<span>※半角数字を入力してください</span>";
    $a = ""; $b = "";
  } else if (!is_numeric($a)){
    echo "<span>※半角数字を入力してください</span>";
    $a = ""; $b = "";
  } else if (!is_numeric($b)) {
    echo "<span>※半角数字を入力してください</span>";
    $a = ""; $b = "";
  }

  switch ($ope) {
    case "+";
      $answer = $a + $b;
      break;
		
    case "-";
      $answer = $a - $b;
      break;
		
    case "*";
      $answer = $a * $b;
      break;
		
    case "/";
      if ($a == 0) {
        $answer = 0;
      } else if ($b == 0){
        echo "<span>※0で割ることはできません</span>";
	$answer = "";
      } else {
        $answer = $a / $b;
      }
    break;
  }
  $txtC = $answer;
?>

<!DOCTYPE HTML>
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>計算</title>
<style type="text/css">
span {
color:red;
font-weight:bold;
}
</style>
<body>
  <form action="" name="form1" method="post">
    <p><input type="text" name="txtA" size="15" value="<?php echo($a); ?>">
    <?php echo(htmlspecialchars($ope)); ?>
    <input type="text" name="txtB" size="15" value="<?php echo($b); ?>"> =
    <input type="text" name="txtC" size="30" value="<?php echo($txtC); ?>"></p>
  </form>
  <p><a href="calc.html">前の画面</a></p>
</body>
</html>

ていうか@pagesってかなり重いな。