Problem beim Rechnen (Promillrechner)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem beim Rechnen (Promillrechner)

    ich hab hier folgendes Script programmiert zum Alkoholgehalt im Blut nach der Watsonformel.
    Irgendwie funktioniert aber die Rechnung nicht...besonders beim multiplizieren der Werte z.b $groesse * "0,xxxx" kommt immer 0 raus...hat jemand eine Idee woran es liegt ?
    (hab es schon durch umstellungen aller art versucht...deshalb jetzt auch etwas komplizierter Programmiert:


    PHP-Code:
    <? 
    function multiplikation($summand1,$summand2){
    $ergebnis=$summand1*$summand2;
    return $ergebnis;
    }


    if ($go=="1")
    {


    if ($geschlecht=="1")
    {
    $alterp = multiplikation("0,09516",$alter); 
    $groessep = multiplikation("0,1074",$groesse);
    $gewichtp = multiplikation("0,3362",$gewicht);

    echo $alterp."<br>";
    echo $groessep."<br>";
    echo $gewichtp."<br>";


    $gkw = "2,447" - $alterp + $groessep + $gewichtp;
    Echo 'du hast als Mann '.$gkw.' Wasser';
    }

    if ($geschlecht=="2")
    {
    $groessep = "0,1069" * $groesse;
    $gewichtp = "0,2466" * $gewicht;

    $gkw = "-2,097" + $groessep + $gewichtp;
    Echo 'du hast als Frau '.$gkw.' Wasser';
    }


    echo $menge;
    $zwergebnis1 = $menge / 10;
    $zwergebnis2 = $zwergebnis1 * 10;

    echo $zwergebnis;
    $Ergebnis = $zwergebnis2 / $gkw;

    Echo 'Sie haben höchstens '.$Ergebnis.' Promille';



    }
    else
    {
    echo '
    <form name="form1" method="post" action="promille.php">
                            <table border="0" cellspacing="0" cellpadding="0">
               <tr> 
                                <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><br>Geschlecht:</font></td>
                                <td width="5">&nbsp;</td>
                                <td>
                                  <br><select name="geschlecht" size="1" value="<? echo $eintrag[4]; ?>" <? echo $styleform; ?> readonly>
                                      
                                      <option value="1">männlich</option>
                                      <option value="2">weiblich</option>
                                     
                                      
                                    </select>
                                </td>
                              </tr>           
       <tr> 
                                <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Groesse:</font></td>
                                <td width="5">&nbsp;</td>
                                <td> 
                                  <input type="text" name="groesse">
                                </td>
                              </tr>
       <tr> 
                                <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Gewicht:</font></td>
                                <td width="5">&nbsp;</td>
                                <td> 
                                  <input type="text" name="gewicht">
                                </td>
                              </tr>
       <tr> 
                                <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Alter</font></td>
                                <td width="5">&nbsp;</td>
                                <td> 
                                  <input type="text" name="alter">
                                </td>
                              </tr>
       <tr> 
                                <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Alkoholmenge (g)</font></td>
                                <td width="5">&nbsp;</td>
                                <td> 
                                  <input type="text" name="menge">
                                </td>
                              </tr>


                          
    <input type="hidden" name="go" value="1" style="background-color:#EEEEEE; font-size: 10; font-color: #333333; font-family: verdana, helvetica, arial"/>                          

                     
                           
                              <tr> 
                                <td>&nbsp;</td>
                                <td width="5">&nbsp;</td>
                                <td> <br>
                                  <input type="submit" value="Anmelden" name="submit" <? echo $styleform; ?>>
                                </td>
                              </tr>
                            </table>
                          </form>

    ';
    }
    ?>

  • #2
    mal versucht, mit . (punkt) zu rechnen ??

    gruss

    Kommentar


    • #3
      funktioniert leider nicht

      Kommentar


      • #4
        muß funktionieren
        PHP-Code:
        <?php
        $mult 
        0.5;
        print 
        "1 * 0.5 = $mult<br>\n"// gibt "1 * 0.5 = 0.5" aus

        $add 0.5;
        print 
        "1 + 0.5 = $add<br>\n"// gibt "1 + 0.5 = 1.5" aus
        ?>
        anstatt , sind . als Komma zu verwenden.

        Kommentar


        • #5
          Du kannst auch setlocale(LC_ALL, "german") verwenden ... dann kannst Du auch mit Komma's rechnen ...

          PS.: Summanden nennt man die Werte aus denen eine Summe gebildet wird. Bei der Multiplikation sind's Multiplikatoren
          carpe noctem

          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

          Kommentar


          • #6
            Pfoa, wie das klingt
            PHP-Code:
            Echo 'du hast als Mann '.$gkw.' Wasser'
            Wenn Du 5 große Bier und drei Achterln reinschüttest, hast mindestens 2 Liter Wasser *g*

            Auf alle Fälle, so funzt's
            PHP-Code:
            <?php
            function multiplikation($multi1,$bionta2){
               
            $ergebnis $multi1 $bionta2;
               return 
            $ergebnis;
            }

            $alter=30;

            print 
            multiplikation(0.09516,$alter); 
            >
            Zuletzt geändert von hand; 05.12.2002, 20:12.

            Kommentar


            • #7
              danke werde es gleich mal ausprobieren...

              die Sätze waren auch nur spaßhalber zum Test, damit ich weiß welche 0 welche ist *g*

              Kommentar


              • #8
                das Problem ist, dass die Variablen irgendwie 0 sind...also $alter, $gewicht usw. werden anscheind nicht richtig vom Formular weitergegeben.

                Hat jemand eine Idee, wo der Fehler liegen könnte ?

                Kommentar


                • #9
                  als ich aus sämtlichen kommawerten 0,09516 werte mit punkt gemacht ab, ging es bei mir! => 0.09516

                  gruss

                  Kommentar


                  • #10
                    Original geschrieben von smyl
                    das Problem ist, dass die Variablen irgendwie 0 sind...also $alter, $gewicht usw. werden anscheind nicht richtig vom Formular weitergegeben.

                    Hat jemand eine Idee, wo der Fehler liegen könnte ?
                    dann ist bei dir wahrscheinlich register_globals auf on gestellt.

                    dann musst du mit $_POST[alter] auf die variablen zugreifen.
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar

                    Lädt...
                    X