- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
<?
class ActiveRecord {
static function find_by_id($id) {
$class = get_called_class(); // LSI magic comes from here
$sql = 'SELECT FROM `' . $class . '` WHERE `id`=\'' . $id . "';";
echo "Generate sql for select by id\n";
echo $sql . "\n";
return(new $class);
}
function save() {
$class = get_class();
if(!isset($this->id)) {
echo "Generate sql for new Record:\n";
$sql = 'INSERT INTO `' . $class . '` ';
$sql_fields = '(';
$sql_values = '(';
foreach($this->fields as $field => $type) {
if($field != 'id') {
$sql_fields .= '`' . $field . '`,';
$sql_values .= "'" . $this->{$field} . "',";
}
}
$sql = $sql . substr($sql_fields, 0, -1) . ') VALUES ' . substr($sql_values, 0, -1) . ');';
echo 'sql: ' . $sql . "\n";
$this->id = 1;
}
else {
echo "Generate sql for Update:\n";
$sql = 'UPDATE `' . $class . '` SET ';
foreach($this->fields as $field => $type) {
if($field != 'id') {
$sql .= '`' . $field . '`=\'' . $this->{$field} . '\',';
}
}
$sql = substr($sql, 0, -1) . ';';
echo 'sql: ' . $sql . "\n";
}
}
}
rO_ot 22.03.2011 23:04 # 0
Забавно, берешь ты какой-то опенсорс активрекорд, пытаешься заюзать, а он с тобой во время работы начинает говорить
echo "Generate sql for select by id\n";
echo $sql . "\n";
Автора линчевать.
Vasiliy 23.03.2011 13:34 # 0