1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Berechnung in Textfeld schrieben

Discussion in 'Web-Know-how für die Homepage' started by MonsterFox, Oct 4, 2006.

Thread Status:
Not open for further replies.
  1. MonsterFox

    MonsterFox Byte

    Ich habe hier mal nen Code:
    PHP:
    [SIZE="1"]<html>
    <head>
    <title>Versender Blatt</title>
    </head>
    <body>
    <form id="form1" name="form1" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
          <table border ="1">
             <tr>
                <th><center>Datum</th>
                <th><center>TPE-Nummer</th>
                <th><center>Empfaenger</th>
                <th><center>Pa.Nr.:</th>
                <th><center>Land</th>
                <th><center>Gewicht</th>
                <th><center>Versandpreis</th>
             </tr>
             <tr>
                 <td><center>
                 <?PHP
                     $Datum
    =date("Y-m-d");
                     echo 
    "<input name='Datum' type='text' size='7' maxlength='40' value='$Datum'>"
                 
    ?>
                 </td>
                 <td>
                     <center><input name="Tpenr" type="text" size="15" maxlength="40">
                 </td>
                 <td>
                     <center><select name="Empfaenger" size="1">
                     <option>XXXXX</option>
                     </select>
                 </td>
                 <td>
                     <center><input name="Pa.Nr.:" type="text" size="5" maxlength="40">
                 </td>
                 <td><center><select name="Land" size="1">
                         <option selected>A</option>
                         <option>D</option>
                         <option>NL</option>
                 </select>
                 </td>
                 <td>
    </form>
                 <form id="form2" name="form2" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
                       <input name="gewicht" type="text" id="gewicht" value="<?php echo $_POST['gewicht'?>" />
                       <input type="submit" name="Submit" value="OK" />
                 </form>
                 </td>
                 <td>
                      <?php
                           $versandkosten 
    0.50;
                           
    $gesamt $_POST['KG'] * $versandkosten;
                           print 
    "<input name='VersPreis' type='text' size='5' id='VersPreis' value='$gesamt'>";
                      
    ?>
                 </td>
             </tr>
    </table>[/SIZE]
    Das Problem ist das er den Wert der in $ gesamt ist nicht gleich un das Textfeld VersPreis schreibt da wollte ich wissen ob da jemand abhilfe weis oder funzt das auch mit einen einfachen refresh des Textfeldes falls es so was gibt^^
     
  2. kalweit

    kalweit Hüter der Glaskugel

    Um das Ergebnis sofort verfügbar zu machen, bleibt nur die Berechnung per JavaScript oder ein Stream per AJAX. Beides setzt von Nutzer aktiviertes JavaScript voraus, im ersten Fall muss zudem die zur Berechnung notwendige Datenbasis an den Browser gesandt werden. Im Ergebnis dürfte der Aufwand in keinem Verhältnis zum Ergebnis stehen, so dass ein Reload der Seite (Selbstaufruf für die Berechnung) wohl der einfachste Weg ist.
     
  3. MonsterFox

    MonsterFox Byte

    ja aber wenn ich seite refresh amche dann macht er daoch alle wieder eler was ich vorhin eingegeben habe oder nicht?

    bzw. wie sieht der Code dann in JS aus, habe nämlcih keine ahnung wie das aussieht habe keine von JS.Ist zwar nicht viel anders als HTML aber naja nie interessieret.
    ICh weis nur mit <script type> mal auf Javascript setzten oder nciht?

    bin irgenwie unbeholfen ich weis^^

    MFG MOnsterFox
     
  4. kalweit

    kalweit Hüter der Glaskugel

    Der User soll auch das Formular abschicken [1], du rechnest ihm per PHP das Ergebnis aus und schickst ihm die gleiche Seite zurück. Entsprechende "value" in den Feldern musst du natürlich vorsehen und setzen.

    Wenn das aus deinem Code die gesamte Versandkostenberechnung ist, müsste das so auf die Schnelle so aussehen:

    Code:
    <input name="gewicht" type="text" id="gewicht" value="" onchange="document.getElementById('VersPreis').value=this.value*0.5" />
    BTW: bevor du das machst, solltest du erst mal die Verschachtelung deiner Tags überprüfen.

    ---

    [1] Grundsätzliches Verfahren: http://www.php-faq.de/q/q-stil-normalform.html
     
  5. MonsterFox

    MonsterFox Byte

    Also danke für deine Hilfe das ganze funzt jetzt^^
    habs so gemacht wie du gesagt hast^^

    Code:
    <td>
                     <center><input name="gewicht" type="text" id="gewicht" size="5" value="" onchange="document.getElementById('VersPreis').value=this.value*0.29" />
                     <input type="button" name="Submit" value="OK" />
                 </td>
                 <td>
                 <input name='VersPreis' type='text' size='5' id='VersPreis' value=''/>
                 </td>
    

    DANKE:bet: :bet: :bet:


    MFG MonsterFox
     
Thread Status:
Not open for further replies.

Share This Page