Heim  >  Artikel  >  Backend-Entwicklung  >  Ein Rechner, der auf einem kleinen Programm basiert, das in der PHP-Grundsprache geschrieben ist

Ein Rechner, der auf einem kleinen Programm basiert, das in der PHP-Grundsprache geschrieben ist

高洛峰
高洛峰Original
2016-12-02 16:35:301279Durchsuche

Rechner basierend auf einem kleinen Programm, das in der Grundsprache PHP geschrieben ist

Anforderungen: Geben Sie Zahlen in das Eingabefeld ein, um Additions-, Subtraktions-, Multiplikations- und Divisionsoperationen durchzuführen (html+php)

Ideen :

1 Erstellen Sie zunächst ein Eingabefeld zur Eingabe von Zahlen und Operatoren. Verwenden Sie das Textattribut „Eingabe“ für Zahlen und das Optionsattribut „sellct“ für Operatoren.

2 Klicken Sie auf „=“. Der entsprechende Vorgang

3 = Zahl, dieses Eingabefeld kann mit der Eingabe übermittelt werden. Klicken Sie einfach auf das Absenden-Formular und der Inhalt wird an PHP übergeben

4 Bestimmen Der aus HTML erhaltene Operator führt den entsprechenden Vorgang aus

5 Nach Abschluss des Vorgangs muss das Ergebnis an das Formular zurückgegeben werden (d. h. dem Formular wird ein Wert zugewiesen)

Code

Html-Code

<form method="post" action=””>//method代表的表单的提交方式,本案例选的是post提交 action是接受的页面,为空表示提交到当前页
              <input type = "text" name="num1" >
              <select name = "select">
                     <option value="+" >+</option>
                     <option value="-" >-</option>
                     <option value="*" >*</option>
                     <option value="/" >/</option>
              </select>
              <input type = "text" name="num2" >
              <input type = "submit" name = "submit" value="=">
              <input type = "text" name="result" >
       </form>

Ein Rechner, der auf einem kleinen Programm basiert, das in der PHP-Grundsprache geschrieben ist

PHP-Code

Wenn der Benutzer auf die Schaltfläche „Senden“ klickt, wird der Wert angezeigt Jetzt müssen wir den Wert im Formular akzeptieren.

Treffen Sie mehrere Urteile, bevor Sie klicken

if (isset($_POST[&#39;submit&#39;])) {
//isset检测变量是否设置,存在,或非NULL, 返回值为布尔, 如果变量存在返回true, 否则为false;,结合$_POST[“submit”], $_POST   //接收通过表单的method=’post’ 方法的传值
$num1 = $_POST[&#39;num1&#39;];//获取第一个输入框中的值,通过input中的name属性获得
             $select = $_POST[&#39;select&#39;];//同上
             $num2 = $_POST[&#39;num2&#39;];//同上
       if (is_numeric($num1) && is_numeric($num2)) {
       //is_numeric() //检测变量是否为数字或数字字符串  返回值 ,true, false  如 100, ‘100’
 
             switch ($select) {//$select是前面传来的运算符
                    case &#39;+&#39;://根据switch的语法,case中的值和switch括号里的值相等那么就执行case后面的那句话,不等则继续往下找
                           $result = $num1+$num2;
                           break;
                    case &#39;-&#39;:
                           $result = $num1-$num2;
                           break;
                    case &#39;*&#39;:
                           $result = $num1*$num2;
                           break;
                    default:
                           if ($num2==0) {//加个判断,除数不能为0
                                  echo "<script>alert(&#39;输入的除数为0请重新输入&#39;)</script>";
                           }else{
                                  $result = $num1/$num2;
                                  break;
                           }     
             }
             }else{
                    //echo 当用户输入的不是数,可能是字符串则给用户提示
                    echo "<script>alert(&#39;输入的不是数&#39;)</script>";
                    $num1 = $num2 = $result = "";//把表单里的内容清空
             }
}

Screenshot des laufenden Ergebnisses

Screenshot der korrekt eingegebenen Zahl

Ein Rechner, der auf einem kleinen Programm basiert, das in der PHP-Grundsprache geschrieben ist

Nach dem Klicken auf das =-Zeichen

Ein Rechner, der auf einem kleinen Programm basiert, das in der PHP-Grundsprache geschrieben ist

Es bedeutet, dass der Wert nicht an das Formular in HTML übergeben wird

Jetzt haben wir Sie müssen den Formularwert festlegen

//Setzen Sie den Wert von value auf num nach der Operation im PHP-Wert ; ;?php echo $result?>">

; Das Eingabefeld hat jetzt Inhalt, wenn die Schaltfläche gesendet wird. Wenn der Benutzer also nicht auf die Schaltfläche „Senden“ klickt, sollte der Wert im Eingabefeld festgelegt werden leeren

Verbessern Sie den Code und fügen Sie am Ende des PHP-Codes ein else{

$num1 =$num2 = $result = "";

}

Screenshot

Beim Klicken auf andere Vorgänge ist der mittlere Operator immer +, Screenshot

Codeverbesserung

in HTML

Ein Rechner, der auf einem kleinen Programm basiert, das in der PHP-Grundsprache geschrieben ist

//select hat ein Attribut ausgewählt. Wenn es festgelegt ist, wird es ausgewählt von Standard, daher muss es mit dem von PHP übergebenen Wert verglichen werden. True bedeutet ausgewählt, false bedeutet nicht ausgewählt.                                      ;>-

                    

                    

             

截图看结果

Ein Rechner, der auf einem kleinen Programm basiert, das in der PHP-Grundsprache geschrieben ist

当用户第一次进来

截图

Ein Rechner, der auf einem kleinen Programm basiert, das in der PHP-Grundsprache geschrieben ist

说明要设置selecte中的默认值

代码

$select=”+”

基本功能已经完成

总的代码

<!DOCTYPE html>
<html>
<head>
       <meta charset="UTF-8">
       <title>Document</title>
</head>
<body>
       <?php
              if (isset($_POST[&#39;submit&#39;])) {
//isset检测变量是否设置,存在,或非NULL, 返回值为布尔, 如果变量存在返回true, 否则为false;,结合$_POST[“submit”], $_POST   //接收通过表单的method=’post’ 方法的传值
              $num1 = $_POST[&#39;num1&#39;];//获取第一个输入框中的值,通过input中的name属性获得
             $select = $_POST[&#39;select&#39;];//同上
             $num2 = $_POST[&#39;num2&#39;];//同上
       if (is_numeric($num1) && is_numeric($num2)) {
       //is_numeric() //检测变量是否为数字或数字字符串  返回值 ,true, false  如 100, ‘100’
 
             switch ($select) {//$select是前面传来的运算符
                    case &#39;+&#39;://根据switch的语法,case中的值和switch括号里的值相等那么就执行case后面的那句话,不等则继续往下找
                           $result = $num1+$num2;
                           break;
                    case &#39;-&#39;:
                           $result = $num1-$num2;
                           break;
                    case &#39;*&#39;:
                           $result = $num1*$num2;
                           break;
                    default:
                           if ($num2==0) {//加个判断,除数不能为0
                                  echo "<script>alert(&#39;输入的除数为0请重新输入&#39;)</script>";
                           }else{
                                  $result = $num1/$num2;
                                  break;
                           }     
             }
             }else{
                    //echo 当用户输入的不是数,可能是字符串则给用户提示
                    echo "<script>alert(&#39;输入的不是数&#39;)</script>";
                    $num1 = $num2 = $result = "";//把表单里的内容清空
             }
}else{
       $num1 = $num2 = $result = "";
       $select = "+";
}
        ?>
<form method="post" action=""><!-- //method代表的表单的提交方式,本案例选的是post提交 action是接受的页面,为空表示提交到当前页 -->
            <input type = "text" name="num1" value="<?php echo $num1?>"  >
              <select name = "select">
                     <option value="+" <?php if($select == &#39;+&#39;)echo &#39;selected&#39;?>>+</option>
                     <option value="-" <?php if($select == &#39;-&#39;)echo &#39;selected&#39;?>>-</option>
                     <option value="*" <?php if($select == &#39;*&#39;)echo &#39;selected&#39;?>>*</option>
                     <option value="/" <?php if($select == &#39;/&#39;)echo &#39;selected&#39;?>>/</option>
              </select>
              <input type = "text" name="num2" value="<?php echo $num2?>" >
              <input type = "submit" name = "submit" value="=">
              <input type = "text" name="result" value="<?php echo $result?>">
       </form>
</body>
</html>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn