Oxid m² automatisch berechnen

Hallo, ich hoffe jemand kann mir helfen.

Ich habe bei Laminat Shops folgende funktion gesehen.

Mann kann entweder die Anzahl der Pakete eingeben oder die Anzahl der m² und er berechnet sofort den Gesamtpreis.

z.B.
http://www.laminat24.de/laminat-home-basic-6mm-country-oak-d1411.html
oder
http://www.floor24.de/laminat/floor24-laminat-landhausdiele-eiche-buette-6-mm.html

Hat jemand eine idee, wie ich das im Oxid machen kann?

Meine Version 4.9.0

Dazu brauchst Du ein Modul. Unter Artikel - Erweitert - Menge/Mengeneinheit kannst Du die qm-Zahl eines Artikels eingeben und dann mit diesen Werten rechnen.

Danke für die Schnelle Antwort.
Das mit - Erweitert und Menge/Mengeneinheit habe ich schon eingestellt.

Trozdem Danke.

Kennst du ein Modul?
Oder gibt es eine gute Seite, die für Oxid viele Module haben?

Ich kenn kein Modul.

Schau mal hier https://exchange.oxid-esales.com/startseite/?redirected=1
oder hier https://github.com/OXIDprojects
oder hier https://www.google.de/?gws_rd=ssl#q=oxid+module

geht vielleicht in die richtung: http://www.ecomponents.de/Module/Oxid-Calculator-Flaechen-und-Volumenrechner.html

[QUOTE=domino;151692]geht vielleicht in die richtung: http://www.ecomponents.de/Module/Oxid-Calculator-Flaechen-und-Volumenrechner.html[/QUOTE]

geht genau in die richtung :wink:

Danke für die Antworten, werde es mir anschauen.

Das gibt es auch noch-> http://www.foxido.de/spin-price . Kann mna auch testen.

Hallo, danke für die Hilfe.

Ich habe es jetzt aber anders gelöst.
Aber nur, dass die Menge erhöht werden kann und in einem Extra Feld die m² angezeigt werden. Diese aber nicht geändert werden können.

[B]productmain.tpl[/B]

                        Menge: <input id="amountToBasket" type="text" name="am" value="1" size="3" autocomplete="off" class="textbox"> 
                        
                        Fläche: <input type="text" id="quadratmeterc" class="keineTextBox">m²</p>
                        
                        <input type="text" style="display:none;" id="quadratmeterb" value="[{$oDetailsProduct->getUnitQuantity()}]">

[B] base.tpl vor dem </body>[/B]

						&lt;script&gt;
                        $(document).ready(function() {
                            $('#amountToBasket').keyup(function() {
                            
                                var menge = $("#amountToBasket").val();
                                var quadratmeter = $("#quadratmeterb").val();
                                
                                var gesamtsumme = (parseFloat(menge)) * (parseFloat(quadratmeter));
                            
                                $('#quadratmeterc').val(gesamtsumme);
                            });
                        });
                        &lt;/script&gt; 

Jetzt habe ich aber noch eine andere Frage.
Soll ich ein neues Thema auf machen, oder können wir das hier lassen?

Kann ich eine Variante auch als Textbox machen?
So, dass dort Werte vom User eingegeben werden können?

Es geht um Teppiche.
Breite gibt es in 4 oder 5 Meter.

Aber die Länge ist individuell.

Dann könnte ich so ähnlich wie oben auch wieder alles berechnen.
Nur ich muss die Länge mit in dem Warenkorb geben.

oder so wie hier:
http://www.room-up.de/teppichboden/7995/vorwerk-samora-1k53-teppichboden-vorwerk-samora?c=1243&sCoreId=cc7e9f04b034656e51b9392ab2f07659

Aber dann müsste ich viel bei den Varianten reinschreiben z.B.
Braun | 4m | 2m | 0cm
Braun | 4m | 2m | 10cm
Braun | 4m | 2m | 20cm
Braun | 4m | 2m | 30cm
Braun | 4m | 2m | 40cm
Braun | 4m | 2m | 50cm
Braun | 4m | 2m | 60cm
Braun | 4m | 2m | 70cm
Braun | 4m | 2m | 80cm
Braun | 4m | 2m | 90cm

Braun | 4m | 3m | 0cm
Braun | 4m | 3m | 10cm
Braun | 4m | 3m | 20cm
Braun | 4m | 3m | 30cm
Braun | 4m | 3m | 40cm
Braun | 4m | 3m | 50cm
Braun | 4m | 3m | 60cm
Braun | 4m | 3m | 70cm
Braun | 4m | 3m | 80cm
Braun | 4m | 3m | 90cm

Braun | 4m | 4m | 0cm
Braun | 4m | 4m | 10cm
Braun | 4m | 4m | 20cm
Braun | 4m | 4m | 30cm
Braun | 4m | 4m | 40cm
Braun | 4m | 4m | 50cm
Braun | 4m | 4m | 60cm
Braun | 4m | 4m | 70cm
Braun | 4m | 4m | 80cm
Braun | 4m | 4m | 90cm

usw.

[QUOTE=matce84;151865]

Kann ich eine Variante auch als Textbox machen?
So, dass dort Werte vom User eingegeben werden können?

Es geht um Teppiche.
Breite gibt es in 4 oder 5 Meter.

Aber die Länge ist individuell.

Dann könnte ich so ähnlich wie oben auch wieder alles berechnen.
Nur ich muss die Länge mit in dem Warenkorb geben.[/QUOTE]

Dazu brauchst Du kein extra Feld.

Variante 1 - 4 m
Variante 2 - 5 m

Artikelanzahl = Anzahl bestellte Meter

Hallo MeisterYoda,
danke für die Hilfe, aber ich habe es leider nicht verstanden.

Habe jetzt die Varianten weggelassen und Auswahllisten gemacht.
Dadurch brauche ich nicht soviele Varianten eingeben.

Habe jetzt auch die Berechnung der 3 Felder
Breite
Länge
Länge cm

Und die Quadratmeter Anzahl.
Jetzt müsste ich aber die Gesamtsumme in den Warenkorb bekommen.
Leider weiss ich nicht wie.

Ich möchte es genau so machen wie bei diesem online Shop.
http://www.room-up.de/teppichboden/7994/vorwerk-samora-1k52-teppichboden-vorwerk-samora?c=1243

benutz doch einfach unser modul sparst du die ganze arbeit

Hi, ja da hast du recht.

Probiere aber gerne, dabei lernt man viel.
Bin auch kurz vorm Ziel.

Falls ich es mit eurer Hilfe nicht schaffe komme ich auf das modul zurück.

Habe jetzt nur noch ein Problem.
Kann ich die Auswahlliste auslesen?

Habe z.B. 3 Auswahllisten

Breite
4 Meter (Ausgewält)
5 Meter

Länge
1 Meter
2 Meter (Ausgewält)
3 Meter
4 Meter

CM
0 cm
10 cm
20 cm

Würde jetzt gerne den “selected” Wert auslesen.
dann könnte ich den Wert in ein input weiterverarbeiten.

Im Quellcode steht:


<div class="dropDown ">
    <p class="selectorLabel underlined ">
        <label>Breite:</label>
                            <span>4 m</span>
            </p>
            <input type="hidden" name="sel[0]" value="0">
        <ul class="drop seldrop FXgradGreyLight shadow">
                                        <li class="">
                    <a data-selection-id="0" href="#" class="selected">4 m</a>
                </li>
                            <li class="">
                    <a data-selection-id="1" href="#" class="">5 m</a>
                </li>
                    </ul>
    </div>
                                                    

<div class="dropDown ">
    <p class="selectorLabel underlined ">
        <label>Länge:</label>
                            <span>2 m</span>
            </p>
            <input type="hidden" name="sel[1]" value="0">
        <ul class="drop seldrop FXgradGreyLight shadow">
                                        <li class="">
                    <a data-selection-id="0" href="#" class="selected">2 m</a>
                </li>
                            <li class="">
                    <a data-selection-id="1" href="#" class="">3 m</a>
                </li>

                    </ul>
    </div>

Aber mit name=“sel[0]” und name="sel[1]"
funktoniert es leider nicht.

hier mein Code:
der Teil mit


                [{block name="details_productmain_tobasket"}]
                    [{oxhasrights ident="TOBASKET"}]
                        [{if !$oDetailsProduct->isNotBuyable()}]
                        	<!-- Teil funktoniert -->
                            <p>Menge: <input id="amountToBasket" type="text" name="am" value="1" size="3" autocomplete="off" class="textbox"> 
                            <span class="anzeigenbeim2">
                            Fläche: <input type="text" id="Flaeche" class="keineTextBox">m²</p>
                            
                            <input type="text" style="display:none;" id="MengeProPaket" value="[{$oDetailsProduct->getUnitQuantity()}]">
                            </span>
                            <!-- Ende Teil funktoniert -->
                            
                            
                            <p>m² Preis <input id="Preis" value="[{oxprice price=$oDetailsProduct->getUnitPrice() }]" type="text" /></p>
                            <p>Quadratmeter <input id="Quadratmeter" type="text" readonly="readonly" /></p>
                            <p>Gesamtpreis <input id="productPrice" type="text" readonly="readonly" /></p> 
                            
                            <button id="toBasket" type="submit" [{if !$blCanBuy}]disabled="disabled"[{/if}] class="submitButton largeButton">[{oxmultilang ident="TO_CART"}]</button>
                        [{/if}]
                    [{/oxhasrights}]
                [{/block}]



<script> 
$(document).ready(function() { 
    $('.tobasket').keyup(function() { 
     
        var preis  = parseFloat( $('#Preis').val()); 
        var breiteM = parseFloat( $("#sel[0]").val()); 
        var laengeM = parseFloat( $("#sel[1]").val()); 
        var laengeCM = parseFloat( $("#sel[2]").val()); 
         
        var laengeGesamt = (laengeM * 100) + laengeCM; 
        var breiteGesamt = 100 * breiteM; 
         
             
        var quadrat = breiteGesamt * laengeGesamt; 
         
        var m = Math.floor( quadrat / 10000 ); 
        var cm = quadrat % ( m * 10000 ) / 100; 
        var gs = m + '.' + cm; 
         
        $('#Quadratmeter').val(gs); 
		
		
		var gesamtpreis = preis * gs; 
		var gesamtpreisGerundet = Math.round( gesamtpreis * 100 ) / 100; 
		
		$('#productPrice').val(gesamtpreisGerundet); 
    }); 
	
	<!-- Teil funktoniert -->
    $('.tobasket').keyup(function() {
	
		var Menge = $("#amountToBasket").val();
		var MengeProPaket = $("#MengeProPaket").val();
		
		var Flaeche = (parseFloat(Menge)) * (parseFloat(MengeProPaket));
		var FlaecheGerundet = Math.round( Flaeche * 100 ) / 100; 
	
        $('#Flaeche').val(FlaecheGerundet);
    });
	<!-- Ende Teil funktoniert -->
	
	
}); 
</script> 

[QUOTE=matce84;151957]Falls ich es mit eurer Hilfe nicht schaffe komme ich auf das modul zurück.[/QUOTE]

Welche Hilfe?

[QUOTE=matce84;151957]Aber mit name=“sel[0]” und name=“sel[1]” funktoniert es leider nicht.[/QUOTE]

Das ist das A und O. Mit diesen Werten musst Du arbeiten, damit die Auswahl im Warenkorb erscheint. Jetzt käme AJAX ins Spiel und die Werte empfangen. In einfachem PHP wäre das z.B.:

$_POST['sel'];

Ok, dann werde ich wohl nicht um ein Modul rumkommen.

Mit diesem
http://www.ecomponents.de/Module/Oxid-Calculator-Flaechen-und-Volumenrechner.html

könnte ich folgende fälle lösen?

Laminat:
http://www.room-up.de/laminat/3288/eiche-fontainebleau-princess-woodstock-tarkett-laminat-tarkett-woodstock?c=1186

Teppich:
http://www.room-up.de/teppichboden/7925/vorwerk-contessa-9d35-teppichboden-vorwerk-contessa?c=1243

Oder gibts es noch eine Alternative, die beides kann?

Danke noch mal für die Hilfen/Tipps.

Ok, kurz zur Info.

Habe bei AGGROSOFT angerufen.

Für die Laminat geschichte, ist das Modul ohne es umzuprogrammieren nicht geeignet.
Die Teppich geschichte wäre aber kein Problem. Allerding noch nicht mit der aktuellen Oxid Version 4.9

Son mist.

Sonst jemand noch eine Lösung?

Hallo, ich nochmal.

Habe jetzt Oxid 4.8 installiert und das Module gekauft.

Leider sieht es anders aus als meine anderen Produktseiten,
das könnte ich unter page -> calc -> calc_details.tpl anpassen.

Leider bekomme ich dort keine Artikelnummer, kein Herstellerlogo, keine Sidebar, kein Artikelpreis oder Quadratmeter Preis angeizeigt.

Jetzt habe ich versucht von der

page -> details -> inc -> productmain.tpl

folgenden Code in die calc_details.tpl einzufügen

        [{* article number *}]
        [{block name="details_productmain_artnumber"}]
            &lt;span id="productArtnum" class="itemCode"&gt;[{oxmultilang ident="PRODUCT_NO" suffix="COLON" }] [{$oDetailsProduct-&gt;oxarticles__oxartnum-&gt;value}]&lt;/span&gt;
        [{/block}]
        
        
        
    [{block name="details_productmain_manufacturersicon"}]
        [{if $oManufacturer-&gt;oxmanufacturers__oxicon-&gt;value}]
            &lt;img src="[{$oManufacturer-&gt;getIconUrl()}]" alt="[{ $oManufacturer-&gt;oxmanufacturers__oxtitle-&gt;value}]"&gt;
        [{/if}]
    [{/block}]

Um Artikelnummer und Herstellerlogo zusehen.
Leider sehe ich nix.

Wie bekomme ich Artikelnummer, Herstellerlogo, Sidebar, Artikelpreis wieder angezeigt?

Hallo Leute,

ich muss mal wieder auf dieses Thema eingehen.

Ich benötige eure Hilfe.
Wir würden auch für eine Lösung zahlen.

Ich habe folgendes Module gekauft: Oxid Calculator - Flächen und Volumenrechner

Es ist fast das was ich brauche. Von der Berechnung her, ist es genau das was ich brauche. Aber optisch nicht, ich muss unbedingt folgende funktionen in dem Template haben.

Das Hersteller Logo
Mehrere Fotos
Farbbezeichnung (Artikel ist individualisierbar)
PDFs und Medien

Eigentlich möchte ich das ganz normale Template haben mit der Berechnungs funktion des Module.

Beispiel Module Detailseite:
von dieser Seite benötige ich

Länge, Breite, Preis pro, Quadratmeter und den Preis.
http://www.fussbodengestaltung.de/index.php?cl=calc&aid=23a88d399210739727096c55ed021ca0

und es sollte optisch so aussehen.

http://www.fussbodengestaltung.de/Shop/Elastische-Belaege/Linoleum/Forbo-Artoleum-Piano-Linoleum.html?listtype=search&searchparam=pian

hier würde dann der Preis gegen die Berechnung ausgetauscht sein.

Ich hoffe ihr wisst was ich meine.

Wie gesagt, wir würden auch für ein Module oder eure Hilfe bezahlen.

Ich nutze:
Community Edition 4.9.3
PHP 5.4

Naja, wenn Du ein Modul gekauft hast, wende Dich an den Hersteller. Ansonsten geht das ganz einfach: http://487.foxido.de/Angebote/Laminat-Powerslide.html