Kleines Problem

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

  • Kleines Problem

    Moin, normalerweise bastell ich ja mit PHP doch aus beruflichen Gründen musste ich mir schnell etwas einfallen lassen,
    um für unsere Intranetseite den Preis 3 bestimmter Artikel anzeigen zu lassen in HTML ^^

    Hört sich schwer an daher n Bild:



    Zu erkennen auf dem Bild-> Die Roten Pfeile zeigen vom Eingabefeld auf die Summe zum Artikel.
    Wenn ich beim 1. Artikel bei Menge 20 Eintrage,
    dann wird per Script 20*10 gerechnet und unter Summe in grün ausgegeben!

    Das klappt wunderbar!!! Bei allen 3 Artikeln sogar ^^

    Mein Problem:

    Ich will das diese per Script erzeugten Summenbeträge die mit dem lilanen Pfeil
    gekennzeichnet sind unten als Gesammtsumme angezeigt werden!
    Ich weiß selber nicht wie das geht ^^

    Der Code:

    PHP-Code:
    <script>
                            
                            var 
    ns6=document.getElementById&&!document.all
                            
                            
                            
    function countlimit(maxlength,e,placeholder){
                            var 
    theform=eval(placeholder)
                            var 
    lengthleft=maxlength-theform.value.length
                            
    var placeholderobj=document.alldocument.all[placeholder] : document.getElementById(placeholder)
                            if (
    window.event||e.target&&e.target==eval(placeholder)){
                            if (
    lengthleft<0)
                            if (
    theform.value<0) {
                                
                            
    theform.value=theform.value
                            placeholderobj
    .innerHTML=0
                            
    } else {

                            var 
    temp
                            theform
    .value=theform.value 
                            temp 
    theform.value 10
                                                    
                                                    
                                    placeholderobj
    .innerHTML "<font color=green>"temp +"</font>"
                            
                            
                            
    }
                            }
                            }                    
                            
                            function 
    displaylimit(theform,thelimit){                                            
                            
                            var 
    limit_text='<b><span id="'+theform.toString()+'">'+thelimit+'</span></b> €'
                        
                            
    if (document.all||ns6)
                                    
    document.write(limit_text)
                            
                                    if (
    document.all){
                                            eval(
    theform).onkeypress=function(){ 
                                                    return 
    restrictinput(thelimit,event,theform)
                                            }
                                            eval(
    theform).onkeyup=function(){ 
                                                    
    countlimit(thelimit,event,theform)
                                            }
                                    } else if (
    ns6){
                                            
    document.body.addEventListener('keypress', function(event) { 
                                                    
    restrictinput(thelimit,event,theform
                                            }, 
    true); 
                                            
    document.body.addEventListener('keyup', function(event) {
                                                     
    countlimit(thelimit,event,theform
                                            }, 
    true); 
                                    }
                            }
                            
                            </
    script
    Das wie gesagt der Scriptcode, eingegeben und ausgegeben werden die Mengen und die Summen so:

    PHP-Code:

    //Feld 1
    <input name="anzahlde" value="0" size="20" class='input'>
    <
    script>
                            
    displaylimit("document.form.anzahlde","0")
                            </
    script>

    //Feld 2
    <input name="anzahlen" value="0" size="20" class='input'>
    <
    script>
                            
    displaylimit("document.form.anzahlen","0")
                            </
    script>

    //Feld 3
    <input name="anzahlcd" value="0" size="20" class='input'>
    <
    script>
                            
    displaylimit("document.form.anzahlcd","0")
                            </
    script
    So wenn ich nun noch Insgesammt wüsste dann wäre ich hier der Held^^

    Bitte um Hilfe (Hoffe es ist ok das ich den Code in PHP Code Dingers vom Forum reingemacht hab)
    Zuletzt geändert von Guranga; 30.08.2005, 14:50.
    [color=red]GTA-SanAndreas.de[/color] ... der Code ist schlecht, aber er funktioniert^^

  • #2
    so ungefähr (ungetestet)

    PHP-Code:

    function summe(form){
      var 
    summe form.anzahlde.value form.anzahlen.value form.anzahlcd.value;

      
    document.getElementById('<mein_summe_textfeld>').value summe;
    }


    //....

    <input name="anzahlde" value="0" size="20" class='input' onchange="summe(this.form);"
    EDIT:
    #1: Du kannst natürlich auch ein anderes Event deiner Wahl nehmen. onkeyup, onkeypress, onwasduwillst

    EDIT:
    #2: Achso, ich bin davon ausgegangen, das deine input-type-text-Elemente innerhalb eines Forms sind, sind sie das nicht, musst du deine Felder anders referenzieren.
    Zuletzt geändert von prego; 30.08.2005, 15:15.

    Kommentar


    • #3
      Jo vielen Dank schonmal den 1. Teil verstehe ich glaube ich^^

      Wie aber ist denn der gesamte Befehl um die Summen Funktion nacher auszugeben?

      Irgentwie sowas?

      PHP-Code:
      <script>summe("this.form")</script
      Ich hab leider keine Ahnung ^^


      Edit: Ja das ganze ist in einer <form>
      [color=red]GTA-SanAndreas.de[/color] ... der Code ist schlecht, aber er funktioniert^^

      Kommentar


      • #4
        wie du siehst, wird bei jeder Änderung deiner Werte das summefeld geschrieben.

        Die Funktion summe() wird ja bei jedem onchange/onkeyup deines textfeldes aufgerufen. und die funktion setzt das Feld <mein_summe_textfeld> auf den errechneten wert.

        Das Summe Feld muss sich nicht innerhalb deines Forms befinden, da es im gesamten Dokument gesucht wird (document.getelement...) - es muss nur die id <mein_summe_textfeld> haben.

        Kommentar


        • #5
          Ok soweit verstehe ich was du meinst, nur nun fehlt mir einfach nur den Code, um dann die Gesammt Summe "anzeigen bzw. ausgeben" zu lassen.

          Den Code um die Summe zu rechnen habe ich soweit verstanden, nur jetzt will ich nur noch wissen wie ich es anzeigen kann!
          [color=red]GTA-SanAndreas.de[/color] ... der Code ist schlecht, aber er funktioniert^^

          Kommentar


          • #6
            PHP-Code:
            <input type="text" id="<mein_summe_textfeld>" /> 

            Kommentar


            • #7
              Hab jetzt die Funktion drinnen, dann die onchange geschichte in den input feldern und das Ausgabefeld.

              Doch leider funzt das nicht, es wird kein Gesamtbetrag angezeigt!

              Edit: Mit onclick funzt das halb, das dumme ist das ich immer in eines der input felder klicken muss um den Gesammtbetrag zu aktualisieren.

              Mmhm was könnte da Abhilfe schaffen?
              Zuletzt geändert von Guranga; 31.08.2005, 09:40.
              [color=red]GTA-SanAndreas.de[/color] ... der Code ist schlecht, aber er funktioniert^^

              Kommentar

              Lädt...
              X