Hallo,
ich bin noch nicht so geschickt im Umgang mit Klassen. Ich möchte mein Shop System nun mit Klassen programmieren, damit ich leichter Dinge hinzufügen bzw. ändern kann.
Ich habe eine Klasse artikel und eine klasse preise. Zuerst möchte ich über die beiden Parameter artikelnum (Artikelnummer) oder gruppennum (Warengruppe) alle Artikel auflisten.
Jeder Artikelnummer kann eine unbestimmte Zahl an Preisen haben. Je nach bestellter Anzahl (Mengerabatt) und Kundengruppe (Endkunde, Händler).
Und genau da liegt mein Problem... da ich auch mit Templates arbeite muss ich die Preise und die Artikel in einem Array verarbeiten. Für die Artikel geht das ohne weiteres, jedoch habe ich bei den Preise so mein Problem...
Wie kann ich die Preise in mein Array $artikel mit einbauen und sie später in einer eigenen foreach - Schleife wieder auslesen? Für die Template - Arbeit verwende ich Smarty.
Hier meine Klassen... falls ihr was anders machen würdet... bin ich auch gerne bereit zu lernen...
Vielen Dank im Vorraus... ich hoffe ihr könnte mir helfen...
Klasse artikel:
Klasse preise:
Ich habe bereits die Methode get_preis_1() über die Klasse artikel verwendet. Aber das medimensionale Array preis_artikelnum bekomme ich einfach nicht zum laufen. Es soll später auch über die artikel Klasse verfügbar sein. Die Methode dazu nennt sich get_preis_artikelnum().
Vielen Dank!
Gruß Björn
ich bin noch nicht so geschickt im Umgang mit Klassen. Ich möchte mein Shop System nun mit Klassen programmieren, damit ich leichter Dinge hinzufügen bzw. ändern kann.
Ich habe eine Klasse artikel und eine klasse preise. Zuerst möchte ich über die beiden Parameter artikelnum (Artikelnummer) oder gruppennum (Warengruppe) alle Artikel auflisten.
Jeder Artikelnummer kann eine unbestimmte Zahl an Preisen haben. Je nach bestellter Anzahl (Mengerabatt) und Kundengruppe (Endkunde, Händler).
Und genau da liegt mein Problem... da ich auch mit Templates arbeite muss ich die Preise und die Artikel in einem Array verarbeiten. Für die Artikel geht das ohne weiteres, jedoch habe ich bei den Preise so mein Problem...
Wie kann ich die Preise in mein Array $artikel mit einbauen und sie später in einer eigenen foreach - Schleife wieder auslesen? Für die Template - Arbeit verwende ich Smarty.
Hier meine Klassen... falls ihr was anders machen würdet... bin ich auch gerne bereit zu lernen...
Vielen Dank im Vorraus... ich hoffe ihr könnte mir helfen...
Klasse artikel:
PHP-Code:
<?php
class artikel {
var $artikelnum;
var $gruppennum;
function get_artikel($artikelnum = "", $gruppennum = "") {
array($artikel);
$query = "SELECT artikelnum, bezeichnun, zusatztext, bild ";
$query.= "FROM artikel ";
if($artikelnum != "") {
$query.= "WHERE artikelnum = '$artikelnum' ";
}
else {
$query.= "WHERE warengrupp = '$gruppennum' ";
$query.= "OR untergrupp = '$gruppennum' ";
}
$query.= "ORDER BY bezeichnun ASC";
$result = mysql_query($query);
while($row = mysql_fetch_array($result)) {
$artikel[$row[artikelnum]][artikelnum] = "$row[artikelnum]";
$artikel[$row[artikelnum]][bezeichnun] = "$row[bezeichnun]";
$artikel[$row[artikelnum]][zusatztext] = "$row[zusatztext]";
$artikel[$row[artikelnum]][bild] = "$row[bild]";
$artikel[$row[artikelnum]][preis_1] = preise::get_preis_1($row[artikelnum]);
}
return $artikel;
}
}
?>
PHP-Code:
<?php
class preise {
var $artikelnum;
var $variantennum;
function get_preis_1($artikelnum) {
$query = "SELECT preis1 ";
$query.= "FROM preisliste ";
$query.= "WHERE artikelnum = '$artikelnum' ";
$query.= "AND preisstaff = '$_SESSION[preisstaff]' ";
$query.= "AND anzahl = '1' ";
$query.= "ORDER BY preis1 ASC ";
$query.= "LIMIT 1";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$preis = $row[preis1];
return $preis;
}
function get_preis_artikelnum($artikelnum) {
array($preis_artikelnum);
$query = "SELECT preis1, anzahl ";
$query.= "FROM preisliste ";
$query.= "WHERE artikelnum = '$artikelnum' ";
$query.= "AND preisstaff = '$_SESSION[preisstaff]' ";
$query.= "ORDER BY anzahl ASC";
$result = mysql_query($query);
while($row = mysql_fetch_array($result)) {
$preis_artikelnum[$row[anzahl]] = $row[preis1];
}
return $preis_artikelnum;
}
}
?>
Vielen Dank!
Gruß Björn
Kommentar