Hallo liebe Gemeinde,
ich habe eine PHP Klasse geschrieben mit der ich Einträge vom Benutzer in die Datenbank schreibe. In diesem Fall das anlegen eines Produkts. Ich würde gerne überprüfen ob die aufgerufenen Funktionen auch ein True senden und wenn nicht eine angepasste Fehlermeldung zurückgeben. Ich bin da gerade ratlos weil ich erst seit neuestem mit Klassen arbeite.
Die Klasse und Funktionen werden in diesem Abschnitt abgerufen.
Funktioniert auch alles bestens und macht was es machen soll, nur fällt mir keine Lösung ein wie ich das ganze überprüfen kann.
Hier der Code der Klasse + Funktionen
ich habe eine PHP Klasse geschrieben mit der ich Einträge vom Benutzer in die Datenbank schreibe. In diesem Fall das anlegen eines Produkts. Ich würde gerne überprüfen ob die aufgerufenen Funktionen auch ein True senden und wenn nicht eine angepasste Fehlermeldung zurückgeben. Ich bin da gerade ratlos weil ich erst seit neuestem mit Klassen arbeite.
Die Klasse und Funktionen werden in diesem Abschnitt abgerufen.
PHP:
$f=new produkt;
$f->anlegen();
$f->name($produkt);
$f->kategorie($kategorie);
$f->unterkategorie($unterkategorie);
$f->bild($_FILES["bild"]);
$f->zugehörigkeit($zugehörigkeit);
$f->absatz($absatz);
$f->archivieren(true);
unset($f);
Funktioniert auch alles bestens und macht was es machen soll, nur fällt mir keine Lösung ein wie ich das ganze überprüfen kann.
Hier der Code der Klasse + Funktionen
PHP:
class produkt
{
private $id;
private $bearbeiten = false;
private $old;
//--------------Methoden-------------
function anlegen()
{
$sql = mysqli_query(db_connect(),"INSERT INTO `produkt_daten` SET `id`='' ");
$this->id = mysqli_insert_id(db_connect());
}
function bearbeiten($id)
{
$this->bearbeiten = true;
$sql = mysqli_query(db_connect(),"SELECT `bild` FROM `produkt_daten` WHERE `id`='".$id."' LIMIT 1");
$row = mysqli_fetch_assoc($sql);
$this->old = $row["bild"];
$this->id = $id;
}
function löschen($id)
{
$sql = mysqli_query(db_connect(),"SELECT `bild` FROM `produkt_daten` WHERE `id`='".$id."' LIMIT 1");
$row = mysqli_fetch_assoc($sql);
if(!empty($row["bild"])) {
unlink("../_data/pictures/".$row["bild"]);
}
mysqli_query(db_connect(),"DELETE FROM `produkt_daten` WHERE `id`='".$id."' LIMIT 1");
}
//Werte
function name($value)
{
if(!empty($value))
{
mysqli_query(db_connect(),"UPDATE `produkt_daten` SET `produkt`='".$value."' WHERE `id`='".$this->id."' LIMIT 1");
}
}
function kategorie($value)
{
if(is_numeric($value))
{
mysqli_query(db_connect(),"UPDATE `produkt_daten` SET `kategorie`='".$value."' WHERE `id`='".$this->id."' LIMIT 1");
}
}
function unterkategorie($value)
{
if(is_numeric($value))
{
mysqli_query(db_connect(),"UPDATE `produkt_daten` SET `unterkategorie`='".$value."' WHERE `id`='".$this->id."' LIMIT 1");
}
}
function bild($datei)
{
if($datei['name'] <> "")
{
if($this->bearbeiten == true)
{
if(file_exists("../_data/pictures/".$this->old)) {
//altes Foto löschen
unlink("../_data/pictures/".$this->old);
}
}
$name = md5(date("i:s").$this->id.date("H"));
if($new = picture_upload(680,1000,$name,$datei,"../_data/pictures/"))
{
mysqli_query(db_connect(),"UPDATE `produkt_daten` SET `bild`='".$new."' WHERE `id`='".$this->id."' LIMIT 1");
}
}
}
function zugehörigkeit($value)
{
if($value == "") $value = 1;
mysqli_query(db_connect(),"UPDATE `produkt_daten` SET `zugehörigkeit`='".$value."' WHERE `id`='".$this->id."' LIMIT 1");
}
function absatz($value)
{
if($value == "") $value = 1;
mysqli_query(db_connect(),"UPDATE `produkt_daten` SET `absatz`='".$value."' WHERE `id`='".$this->id."' LIMIT 1");
}
function archivieren($value)
{
if($value === true){$archiv = 1;} else {$archiv = 0;}
mysqli_query(db_connect(),"UPDATE`produkt_daten` SET `archiv`='".$archiv."' WHERE `id`='".$this->id."' LIMIT 1");
}
}