personTest.php
dbh = $dbh;
$person->setFullname($fullname);
$person->setBirthdate($birthdate);
$person->setCountryCode($country_code);
//print $person->getFullname() ."\n";
//var_dump($person);
$person->store();
// print "id: ". $person->getId() ."\n";s
$person->setFullname('New Name');
$person->store();
$person2 = new Person();
$person2->dbh = $dbh;
$person2->read($person->getId());
// print "Name: ". $person2->getFullname() ."\n";
$this->assertEquals($person2->getFullname(), $person->getFullname());
$this->assertEquals($person2->getBirthdate(), $person->getBirthdate());
$person2->delete();
# $person3 = new Person();
# $person3->read($person->getId()); # sollte einen Fehler produzieren
}
}
lib/Init.php
lib/Person.php
fullname = $value;
}
function getFullname() {
return $this->fullname;
}
function setBirthdate($value) {
$this->birthdate = $value;
}
function getBirthdate() {
return $this->birthdate;
}
function setCountryCode($value) {
$this->country_code = $value;
}
function getCountryCode() {
return $this->country_code;
}
function setId($value) {
$this->id = $value;
}
function getId() {
return $this->id;
}
function store() {
$op = '';
if ($this->id != '') {
$op = 'update';
$sth = $this->dbh->prepare(
"update person
set fullname = ?,
birthdate = ?,
country_code = ?
where id = ?"
);
$sth->bind_param("sssi",
$this->fullname,
$this->birthdate,
$this->country_code,
$this->id);
} else {
$op = 'insert';
$sth = $this->dbh->prepare(
"insert into person
(fullname,
birthdate,
country_code)
values (?, ?, ?)"
);
$sth->bind_param("sss",
$this->fullname,
$this->birthdate,
$this->country_code);
}
$sth->execute();
if ($op == 'insert') {
$this->id = $sth->insert_id;
}
}
function read($per_id) {
$sth = $this->dbh->prepare(
'select id, fullname, birthdate, country_code from person where id = ?'
);
$sth->bind_param("i", $per_id);
$sth->execute();
$sth->bind_result($this->id, $this->fullname, $this->birthdate, $this->country_code);
$sth->fetch();
}
function delete() {
$sth = $this->dbh->prepare(
'delete from person where id = ?'
);
$sth->bind_param("i", $this->id);
$sth->execute();
}
}