<?php
/*
http://coolpenguin.net/persistclass
for updates, documentation, tutorials
*/
require('persistclass/PersistClass.php');
// create a database connection
try {
$myConnection = new DbConnectionMysql();
$myConnection->connect('localhost', 'demouser', 'demopassword', 'demodatabase');
DbConnectionPool::instance()->registerConnection($myConnection);
} catch(ConnectionException $e) {
// problem with connection, display error message
}
// preparation for the demo (inserting a row with id = 1)
class TestTable extends PersistClass {
protected $sqlTableName = 'TESTTABLE';
protected $sqlPrimaryKey = 'testid';
}
try {
$someId = 153;
$test = new TestTable($someId);
} catch(NoResultException $e) {
// object doesn't exist, do something
}
try {
$id = 1;
$test = new TestTable($someId);
echo $test->getData('thiscolumndoesntexist');
} catch(NoDataException $e) {
// referring to non-existing columns will throw NoDataException
} catch(NoResultException $e) {
// trying to initiate non-existing object
}
$con = DbConnectionPool::instance()->getConnection();
try {
$con->query("This is not a valid sql query");
} catch(QueryException $e) {
// query failed
}
echo 'Test successful';
?>
|