Hallo Forum, folgendes Problem:
ich habe eine Klasse 'Artikel':
Die Artikel Objekte werden in einer SESSION gespeichert und je nachdem ob ein Artikel eine Id hat, also bereits in der DB vorhanden ist soll geupdatet oder eben ein neuer angelegt werden.
aber das funktioniert nicht, es werden immer alle Artikel neu angelegt.
Wo ist der Fehler?
mfg
ich habe eine Klasse 'Artikel':
PHP:
<?php
include_once('dbconnection.php');
class artikel{
var $id;
var $anzahl;
var $beschreibung;
var $einzelpreis;
var $gesamtpreis;
...
// Konstruktor, hier wird Id nicht gesetzt.
function artikel($az,$besch,$ep,$gp){
$this->anzahl = $az;
$this->beschreibung = $besch;
$this->einzelpreis = $ep;
$this->gesamtpreis = $gp;
}
function setId($id){
$this->id = $id;
}
function getId(){
if(isset($this->id)){
return $this->id;
}else{
return NULL;
}
}
function anlegen(){
// Hier wird der Artikel in die DB geschrieben (insert)
}
function updaten(){
// Hier wird der Atikel in der DB upgedatet (update)
}
...
}
Die Artikel Objekte werden in einer SESSION gespeichert und je nachdem ob ein Artikel eine Id hat, also bereits in der DB vorhanden ist soll geupdatet oder eben ein neuer angelegt werden.
PHP:
/* Artikel anlegen oder updaten */
for ($j = 1; $j <= $_SESSION['art_anzahl']; $j++){
if(isset($_SESSION['myArtikel'.$j])){
if(!is_null($_SESSION['myArtikel'.$j]->getId())){
$_SESSION['myArtikel'.$j]->updaten($_SESSION['myArtikel'.$j]->getId());
}else{
$_SESSION['myArtikel'.$j]->anlegen($best_id);
}
}
}
aber das funktioniert nicht, es werden immer alle Artikel neu angelegt.
Wo ist der Fehler?
mfg
Zuletzt bearbeitet: