• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Rechnungssystem

Desaster3

Neues Mitglied
Hallo,

ich bin dabei ein Rechnungssystem zum programmieren. Dabei stoße ich allerdings auf ein Problem.
Man kann in dem Shop maximal 5 Domains auf einmal bestellen.

Je nach Paket müssen die Domains aber anders berechnet werden.
z.B. Im Paket 1 sind keine Domains inklusiv also import Preisliste.
Im apaket 2 sind allerdings 2 .de Domains inklusiv also müssen zwei .de Domains mit 0 Euro berechnet werden, der Rest .com oder weitere Domains jedoch wieder nach der Preisliste.

Mir fehlen einfach nur die Ansätze. Mit welchen Methoden könnte man sowas programmieren.

Ich hatte zunächst an Arrays gedacht. Eine foreach Schleife geht alle besetzten Arrays durch...

Weiter weiß ich dann aber auch leider nicht.

Kann mir da jemand mal ein Realisierungsvorschlag geben. :razz:

Vielen Dank
mfg
 
Werbung:
if schleifen wären glaub ich was für dich
PHP:
<?php
if($paket=1)
{
import();
}
elseif($paket=2)
{
import();
}
else
{
import();
}
 
Werbung:
Wie kann den bestellten Domains ein anderer Preis jeweils zugewiesen werden?
PHP:
$domain[1] = 1.00;
$domain[2] = 0.00;
$domain[3] = 1.00;
$domain[4] = 0.00;
$domain[5] = 0.5;

Domain 2 und 4 werden als Inklusivdomain berechnet, da sie .de Domains sind und im Paket kostenlos enthalten sind. Domain 5 ist auch eine .de Domain, diese wird aber nach Preisliste berechnet, da alle Inklusivdomains aufgebraucht sind.

Das Script muss also entscheiden:
Gibt es in dem bestellten Paket überhaupt Inklusivdomains?
Wenn Ja, welche und wieviele?
Wenn Nein, Import normale Preisliste.

Berechnung aller Inklusivdomains als 0 Euro, der Rest gm. Preisliste.

if schleifen wären glaub ich was für dich
PHP:
<?php
if($paket=1)
{
import();
}
elseif($paket=2)
{
import();
}
else
{
import();
}

Zu beachten ist aber:
Wenn in Paket 2 2x .de inklusiv ist man bestellt aber drei.
Es darf nur eine berechnet werden.
Andere Domains wie .com Domains müssen auch weiterhin berechnet werden.
Das könnte ich mit deinem Vorschlag mir leider nicht vorstellen.
 
Zuletzt bearbeitet von einem Moderator:
Meiner Meinung nach sollte das nicht erst bei der Rechnungserstellung passieren. Du muisst beim Bestellen (Bestätigen) der Domain die Informationen in die entsprechende Tabelle scheriben. Das ganze könnte ich mir etwa so vorstellen:
Code:
Kundentabelle:
kuid - eindeutige id (auto-increment) - gleichzeitig Kundennummer
[Kundeninformationen]

Paktetabelle: (Tabelle der versch. Pakete)
paid - eindeutige id (auto-increment)
[allg. Paketinfos - Webspace, Emailpostfächer usw.]
pa_inc_anz (Anzahl Inclusive-Domains)

KundenPakettabelle (Tabelle der vom Kunden gebuchten Pakete)
kpid - eindeutige id (auto-incremet)
kpkuid (id mit Referenz auf Kundentabelle)
kppaid (id mit Referenz auf Pakettabelle)
kp_tld_anz (Anzahl der Domains für dieses Paket)
kp_inc_anz_genutzt (Anzahl genutzter Inclusive-Domains)

Domaintabelle (Tabelle der vom Kunden gebuchten Domains)
doid - eindeutige id (auto-increment)
dokpid (id mit Referenz auf KundenPaktettabelle)
dopaid (id mit Referenz auf Pakettabelle)
dokuid (id mit Referenz auf Kundentabelle)
do_name (Name der Domain vor der TLD)
do_tld (TLD der Domain)
do_incl (Kennzeichen ob inclusive)

TLDtabelle (Tabelle der verfügbaren TLDs)
tlid - eindeutige id (auto-increment)
tl-name (Name der TLD - de, com, eu usw.)
tl_preis (Preis der TLD)
tl_inc (Kennzeichen ob diese Domain inclusive sein könnte)
Beim Bestellen einer neuen Domain wird nun zuerst überprüft, ob die Domain generell eine Inclusive-Domain sein könnte (lesen der TLDtabelle). Wenn das zutrifft, dann wird über die KundenPakettabelle und Pakettabelle überprüft, ob die maximale Anzahl der möglichen Inclusive-Domains erreicht wurde.

So, ich hoffe, dass mein Gedankenansatz halbwegs rübergekommen ist.

Gruß thuemmy
 
Werbung:
Zurück
Oben