2016-04-10 14 views
0

Dieses Formular nimmt Daten nur im Feld "inp" auf. Um zwei Zahlen zu multiplizieren, müssen Sie die erste Zahl eingeben und dann "=" drücken, um die Zahl an das Feld "out" zu senden. Geben Sie dann die zweite Zahl ein und drücken Sie "*". Ich versuche, die Ergebnisse ($ result) von Berechnungen in das "out" -Feld zu posten und nicht sicher, wie man das mit PHP macht. Jede Hilfe würde sehr geschätzt werden.Buchung von PHP-Ergebnissen nach Berechnung im Formularfeld

php:

$input = $_POST['inp']; 
$output= $_POST['out']; 


if($_POST['submit'] == 'add') { 
    $result = $input + $output; 
    //set result to "out" 
} 
else if($_POST['submit'] == 'sub') { 
    $result = $input - $output; 
    //set result to "out" 
} 
else if($_POST['submit'] == 'mul') { 
    $result = $input * $output; 
    //set result to "out" 
} 
else if($_POST['submit'] == 'div') { 
    $result = $input/$output; 
    //set result to "out" 
} 
else if($_POST['submit'] == 'equ') { 
    $result = $input; 
    //set result to "out" 
} 

Form:

<body> 
    <form action = "calc.php" method = "post"> 
     <input type="text" value="0.0" name="out" readonly/> 
     <input type="text" value="0" name="inp"/> 
     <input type="submit" value="+" name="add"/> 
     <input type="submit" value="-" name="sub"/> 
     <input type="submit" value="*" name="mul"/> 
     <input type="submit" value="/" name="div"/> 
     <input type="submit" value="=" name="equ"/> 
    </form> 
</body> 

+0

hinzufügen so etwas wie dieses '" 0,0 name =“ out“Nur-Lese />' stattdessen Ihr '' –

Antwort

0

Wenn Sie PHP und HTML-Code in der gleichen Datei können Sie einfach schreiben schreiben out Eingabewert berechnetes Ergebnis. Versuchen Sie etwas wie folgt:

<body> 
    <form action = "calc.php" method = "post"> 
     <input type="text" 
      value="<?=!empty($result)?$result:"0.0"?>" name="out" readonly/> 
     <input type="text" value="0" name="inp"/> 
     <input type="submit" value="+" name="add"/> 
     <input type="submit" value="-" name="sub"/> 
     <input type="submit" value="*" name="mul"/> 
     <input type="submit" value="/" name="div"/> 
     <input type="submit" value="=" name="equ"/> 
    </form> 
</body> 
+0

Ja, das funktioniert wunderbar !! Ich danke dir sehr. Auch ich habe einen Fehler in meinem PHP. Die Berechnungen sollten wie folgt aussehen: if ($ _ POST ['add']) { \t \t $ result = $ output + $ input; \t} – Tommizzy

0

Ich habe Ihren Code geändert.

 
$result= ''; 

    if ($_POST) { 

     $input = (int) $_POST['inp']; 
     $output= (int) $_POST['out']; 


     if(isset($_POST['add']) && !empty($input)) { 
      $result = $output + $input; 
      //set result to "out" 
     } 
     else if(isset($_POST['sub']) && !empty($input)) { 
      $result = $output - $input; 
      //set result to "out" 
     } 
     else if(isset($_POST['mul']) && !empty($input)) { 
      $result = $output * $input; 
      //set result to "out" 
     } 
     else if(isset($_POST['div']) && !empty($input)) { 
      $result = $output/$input; 
      //set result to "out" 
     } 
     else if(isset($_POST['equ']) && !empty($input)) { 
      $result = $input; 
      //set result to "out" 
     } else { 
      $error = "Please enter a number"; 
     } 
    } 
<body> 
<form action="cal.php" method = "post"> 
    <input type="text" value="<?=!empty($result)?$result:"0.0"?>" name="out" readonly/> 
    <input type="text" value="0" name="inp"/> 
    <input type="submit" value="+" name="add"/> 
    <input type="submit" value="-" name="sub"/> 
    <input type="submit" value="*" name="mul"/> 
    <input type="submit" value="/" name="div"/> 
    <input type="submit" value="=" name="equ"/> 
</form> 
<p><?=isset($error)?$error:''?></p> 

+0

können Sie bitte erklären, auch mit Worten, was Ihre Lösung ist –