Frage zu PHP (Eingabefelder usw..)

Dieses Thema im Forum "Webentwicklung" wurde erstellt von xampp, 7. Januar 2007 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 7. Januar 2007
    huhu,

    ich muss nen "taschenrechner" in PHP coden.. also es muss eben nur was einfaches sein..

    also hab ich mal folgenden code bis jetzt gemacht.. (funktioniert auch so, wie ich das will..)

    aber ich will eben, dass ich die werte für $a und $b nicht in den quellcode schreiben muss, sondern ich will die gerne durch eine art Editfeld einlesen lassen.. also ich schreib die zahlen in nen editfeld und eingelesen werden die dann durch nen buttonklick, der dann unten das ergbnis aus ausgibt...

    nur leider weiß ich nicht, wie ich das hinbekomme..

    nen button krieg ich ja noch in den code eingefügt, aber ich weiß nicht, wie ich das dann handhaben muss..

    hier mein code..

    danke schonmal @ all

    PHP:
    <html>
    <head>
     <title>Taschenrechner</title>
    </head>
     <body>
       <h1>Taschenrechner</h1>
    <?php
      $a 
    10 ;             // a soll aus einem "editfeld" eingegeben werden    
      
    $b  5 ;             // b soll aus einem "editfeld" eingegeben werden    
      
    $plus  $a + $b ;
      
    $minus  $a - $b ;
    ?>
       <h2>Ergebnisse</h2>
        Addition: <?php  echo  $plus ?>        <!--  plus soll durch drücken eines buttons eingelesen und ausgegeben werden -->
       <br>
        Subtraktion: <?php  echo  $minus ?>    <!-- minus soll durch drücken eines buttons eingelesen und ausgegeben werden -->
     </body>
    </html>
     
  2. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    ~moved~
     
  3. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    PHP:
    <html>
    <head>
    <title>Taschenrechner</title>
    </head>
    <body>
       <h1>Taschenrechner</h1>
       <form method="POST" action="">
           <input name="a" type="text"><br>
           <input name="b" type="text"><br>
           <input name="submit" type="submit" value="rechnen">
       </form>
    <?php
      $a 
    $_POST [ 'a' ];
      
    $b  $_POST [ 'b' ];
      
    $plus  $a + $b ;
      
    $minus  $a - $b ;
    ?>
       <h2>Ergebnisse</h2>
        Addition: <?php  echo  $plus ?>
       <br>
        Subtraktion: <?php  echo  $minus ?>
    </body>
    </html>
    habs nicht getestet, ist nur ne schnelle Lösung kannst ja noch umbauen.
     
  4. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    vllt noch so:
    PHP:
      $a  intval ( $_POST [ 'a' ]);
      
    $b  intval ( $_POST [ 'b' ]);
    damit keiner fehler produziert
     
  5. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    huhu,

    besten dank schonmal an euch

    funzt soweit super...

    nur ich hab jetzt die 4 grundrechenarten...

    das problem ist ja.. die division durch 0 ist nicht erlaubt..

    sag sgt er mir ja auch schön durch

    nur ich hab mir so gedacht.. dem bäugst du vor, indem du ne if anweisung nimmst...

    PHP:
       <?php 
        
    if ( $b  ==  0 ) {
         
    $Division  "Die Division durch die Zahl 0 ist nicht erlaubt" ;
         }
          echo 
    $Division ;          // Ausgabe der Variable '$Division' mittels 'echo'
       
    ?>

    aber er zeigt den fehler immernoch an.. nur wie krieg ich das weg? hier mein code bis jetzt

    und danke nochmal für die hilfe

    PHP:
    <html>
     <head>
      <title>Taschenrechner</title>
     </head>
    <body>
     <h1>Taschenrechner</h1>
      <form method="POST" action="">
        Zahl 1  <input name="a" type="text"><br>
        Zahl 2  <input name="b" type="text"><br>
                <input name="submit" type="submit" value="rechnen">
      </form>
       <?php
        $a 
    $_POST [ 'a' ];                 // eingelesene 'Zahl 1' der Variable '$a' zuweisen
        
    $b  $_POST [ 'b' ];                 // eingelesene 'Zahl 2' der Variable '$b' zuweisen
         
    $Addition  $a + $b ;                 // der Variable '$Addition'  eine Rechenoperation zuweisen
         
    $Subtraktion  $a - $b ;             // der Variable '$Subtraktion'  eine Rechenoperation zuweisen
         
    $Division  $a / $b ;              // der Variable '$Division'  eine Rechenoperation zuweisen
         
    $Multiplikation  $a * $b ;         // der Variable '$Multiplikation'  eine Rechenoperation zuweisen
       
    ?>
     <h2>Ergebnisse</h2>
      Addition: 
       <?php 
        
    echo  $Addition ;         // Ausgabe der Variable '$Addition' mittels 'echo'
       
    ?>    
     <br>
      Subtraktion: 
       <?php 
        
    echo  $Subtraktion ;      // Ausgabe der Variable '$Subtraktion' mittels 'echo'
       
    ?>        
     <br>
      Division: 
       <?php 
        
    if ( $b  ==  0 ) {
         
    $Division  "Die Division durch die Zahl 0 ist nicht erlaubt" ;
         }
          echo 
    $Division ;          // Ausgabe der Variable '$Division' mittels 'echo'
       
    ?>
     <br>
      Multiplikation: 
       <?php 
        
    echo  $Multiplikation ;      // Ausgabe der Variable '$Multiplikation' mittels 'echo' 
       
    ?>
    </body>
    </html>

    hab mal überlegt.. und ne andere if abfrage genommen... aber da kommt das gleiche

    hier der code..

    PHP:
    <html>
     <head>
      <title>Taschenrechner</title>
     </head>
    <body>
     <h1>Taschenrechner</h1>
      <form method="POST" action="">
        Zahl 1  <input name="a" type="text"><br>
        Zahl 2  <input name="b" type="text"><br>
                <input name="submit" type="submit" value="Berechnen">
      </form>
       <?php
        $a 
    $_POST [ 'a' ];                 // eingelesene 'Zahl 1' der Variable '$a' zuweisen
        
    $b  $_POST [ 'b' ];                 // eingelesene 'Zahl 2' der Variable '$b' zuweisen
        
        
        
    if ( $b  ==  0 ) {
            
    $Division  $NULL ;
           } else {
              
    $Division  $a / $b
             }      
        
         
    $Addition  $a + $b ;                 // der Variable '$Addition'  eine Rechenoperation zuweisen
         
    $Subtraktion  $a - $b ;             // der Variable '$Subtraktion'  eine Rechenoperation zuweisen
         
    $Multiplikation  $a * $b ;         // der Variable '$Multiplikation'  eine Rechenoperation zuweisen
       
    ?>
     <h2>Ergebnisse</h2>
      Addition: 
       <?php 
        
    echo  $Addition ;         // Ausgabe der Variable '$Addition' mittels 'echo'
       
    ?>    
     <br>
      Subtraktion: 
       <?php 
        
    echo  $Subtraktion ;      // Ausgabe der Variable '$Subtraktion' mittels 'echo'
       
    ?>        
     <br>
      Division: 
       <?php 
        
    echo  $Division ;          // Ausgabe der Variable '$Division' mittels 'echo'
       
    ?>
     <br>
      Multiplikation: 
       <?php 
        
    echo  $Multiplikation ;      // Ausgabe der Variable '$Multiplikation' mittels 'echo' 
       
    ?>
    </body>
    </html>
     
  6. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    Und wo definierst du $NULL ?
    Mach halt

    PHP:
    [..  Dein Code  ..]  $Division  = ( $b == 0 ) ?  'Division durch 0 ist nicht erlaubt'  $a / $b ; [..  Dein Code  ..] 
    Und anstelle von intval() würde ich floatval() empfehlen, da dann auch Kommezahlen erlaubt sind.

    mfG
     
  7. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    das $NULL hätte ich dann unten definiert.. und dann als text ausgegeben... hatte ich aber vergessen syr

    nur kannst du mir bitte in worten sagen, was dein code aussagt? ich versteh es nämlich auf anhieb nicht syr

    danke schonmal für die hilfe

    mfg xampp
     
  8. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    PHP:
    <? php
    if ( $b  ==  or  $b == "" )
    {
    $Division  "Die Division durch die Zahl 0 ist nicht erlaubt" ;
    echo 
    $Division ;          // Ausgabe der Variable '$Division' mittels 'echo'
    exit;
    }
    ?> 
     
  9. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    danke..

    ich hab das jetzt so gemacht...

    PHP:
    <? php
        $a 
    floatval ( $_POST [ 'a' ]);                 // eingelesene 'Zahl 1' der Variable '$a' zuweisen
        
    $b  floatval ( $_POST [ 'b' ]);                 // eingelesene 'Zahl 2' der Variable '$b' zuweisen
        
        // 'floatval($_POST[''])' lässt auch Kommazahlen zu
        
        
    if ( $b  ==  or  $b == "" ) {
            
    $Division  "Die Division durch die Zahl 0 ist nicht erlaubt"
           } else {
              
    $Division  $a / $b
             }      
        
         
    $Addition  $a + $b ;                 // der Variable '$Addition'  eine Rechenoperation zuweisen
         
    $Subtraktion  $a - $b ;             // der Variable '$Subtraktion'  eine Rechenoperation zuweisen
         
    $Multiplikation  $a * $b ;         // der Variable '$Multiplikation'  eine Rechenoperation zuweisen
       
    ?>
    und dann eben die ausgaben unten.. aber wenn ich die seite aufrufe, dann ist der fehler immernoch da..

    kann ich dem vllt vorbeugen, indem ich nen startwert festlege, der dann in dem editfeld schon steht?

    ich hab mal nen bild gemacht.. so sieht es aus, wenn ich die seite aufmachen..

    Frubar SaU - Screenshot and Upload


    aber eigendlich müsste der fehler ja nicht kommen, da du ja in der if auch den fall mit drin hast, dass b 'leer' sein könnte..

     
  10. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    du könntest den z.B. auch nur rechnen lassen wenn isset($_POST['submit'])
    oder du stellst die fehlerausgabe mit error_reporting(0); einfach aus
     
  11. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    Hi!

    Ich hätte jede Rechenart als Funktion definiert und einfach includet. Man könnte auch noch mit einem Dropdown Menu die rechenart auswählen lassen, damit man sich aussuchen kann, was ausgerechnet werden soll.

    Für Division hätte die Funktion so aussehen können(functions.php):

    PHP:
    function  division ( $a $b ){
      if(
    $b  ==  ||  $b  == "" ){
        
    $c = "Division konnte nicht ausgeführt werden, da die 2. Zahl 0ist oder nicht definiert wurde" ;
      }
      else{
        
    $c  = $a  $b ;
      }
      return 
    $c ;
    }
    Und dann in die "Hauptdatei"
    PHP:
    include ( "functions.php" );
    $ergebnis  division ( $a $b );
    echo 
    $ergebnis ;

    Jetzt fehlen natürlich noch die anderen Rechenarten in der functions.php und die Hauptdatei müsste auch noch vervollständigt werden.
    Das mit den Funktionen wäre mein Vorschlag. Wenn du es leiber so machen möchtest, wie du es bisher hast ist das auch gut!^^

    Haffte nicht für Fehler

    MfG cable
     
  12. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    PHP:
    <html>
    <head>
      <title>Taschenrechner</title>
    </head>
    <body>
    <h1>Taschenrechner</h1>
      <form method="POST" action="">
        Zahl 1  <input name="a" type="text"><br>
        Zahl 2  <input name="b" type="text"><br>
                <input name="submit" type="submit" value="Berechnen">
      </form>
       <?php
        $a 
    $_POST [ 'a' ];                 // eingelesene 'Zahl 1' der Variable '$a' zuweisen
        
    $b  $_POST [ 'b' ];                 // eingelesene 'Zahl 2' der Variable '$b' zuweisen
        
        
        
    if ( $b  ==  0 ) {
            
    $Division  $NULL ;
           } else {
              
    $Division  $a / $b ;
             }      
        
         
    $Addition  $a + $b ;                 // der Variable '$Addition'  eine Rechenoperation zuweisen
         
    $Subtraktion  $a - $b ;             // der Variable '$Subtraktion'  eine Rechenoperation zuweisen
         
    $Multiplikation  $a * $b ;         // der Variable '$Multiplikation'  eine Rechenoperation zuweisen
       
    ?>
    <h2>Ergebnisse</h2>
      Addition:
       <?php
        
    echo  $Addition ;         // Ausgabe der Variable '$Addition' mittels 'echo'
       
    ?>    
    <br>
      Subtraktion:
       <?php
        
    echo  $Subtraktion ;      // Ausgabe der Variable '$Subtraktion' mittels 'echo'
       
    ?>        
    <br>
      Division:
       <?php
        
    echo  $Division ;          // Ausgabe der Variable '$Division' mittels 'echo'
       
    ?>
    <br>
      Multiplikation:
       <?php
        
    echo  $Multiplikation ;      // Ausgabe der Variable '$Multiplikation' mittels 'echo'
       
    ?>
    </body>
    </html>
    Der Code klappt bei mir wunderbar...


    greetz
     
  13. 7. Januar 2007
    AW: Frage zu PHP (Eingabefelder usw..)

    huhu,

    danke schonmal @ all...

    ja, der code klappt.. da hast du recht...

    das problem war (*mir leid tut*) ich habs zwar bei mir aufm webserver gepackt die datei.. aber ich habe die ganze zeit nicht diese datei edited, sondern ne kopie auf der localen hd.. somit konnte ich da ändern, was ich wollte, es kam immer wieder der fehler...

    also big THX an alle

    syr, für den sau dummen fehler.. hätte und viel arbeit erspart..

    mfg xampp
     
  14. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.