Initial import: Carteasy Shop (Dev-Stand)
This commit is contained in:
@@ -0,0 +1,107 @@
|
||||
<?php
|
||||
|
||||
class Base_Edit {
|
||||
|
||||
protected $base_object;
|
||||
protected $db;
|
||||
protected $error;
|
||||
protected $id;
|
||||
|
||||
public function __construct($base_object, $id = false) {
|
||||
$this->base_object = $base_object;
|
||||
$this->db = $base_object->db;
|
||||
$this->error = false;
|
||||
$this->id = $id;
|
||||
} // end __construct
|
||||
|
||||
public function set_id($id) {
|
||||
$this->id = $id;
|
||||
} // end set_id
|
||||
|
||||
public function get_id() {
|
||||
return $this->id;
|
||||
} // end get_id
|
||||
|
||||
public function get_error() {
|
||||
return $this->error();
|
||||
} // end get_error
|
||||
|
||||
protected function select_one($table) {
|
||||
if ($this->id) {
|
||||
$sql = 'SELECT * FROM '.$table;
|
||||
$sql .= ' WHERE '.$this->get_id_name($table);
|
||||
$sql .= '='.$this->db->real_escape_string($this->id);
|
||||
|
||||
$result = $this->db->query($sql);
|
||||
|
||||
if ($result->num_rows > 0) {
|
||||
return $this->enrich($result->fetch_object());
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
} // end select_one
|
||||
|
||||
protected function delete_one($table) {
|
||||
$sql = 'DELETE FROM '.$table;
|
||||
$sql .= ' WHERE '.$this->get_id_name($table);
|
||||
$sql .= '='.$this->db->real_escape_string($this->id);
|
||||
|
||||
return $this->db->query($sql);
|
||||
} // end delete_one
|
||||
|
||||
private function set_string($data) {
|
||||
$sql = ' SET';
|
||||
|
||||
$first = true;
|
||||
foreach ($data as $key => $value) {
|
||||
if ($first) {
|
||||
$first = false;
|
||||
} else {
|
||||
$sql .= ',';
|
||||
}
|
||||
|
||||
$sql .= ' '.$this->db->real_escape_string($key);
|
||||
$sql .= "='".$this->db->real_escape_string($value)."'";
|
||||
}
|
||||
|
||||
return $sql;
|
||||
} // end set_string
|
||||
|
||||
private function save_data($sql) {
|
||||
$result = $this->db->query($sql);
|
||||
|
||||
if ($result) {
|
||||
return $this->db->insert_id;
|
||||
}
|
||||
|
||||
return false;
|
||||
} // end save_data
|
||||
|
||||
protected function create_one($table, $data) {
|
||||
$sql = 'INSERT INTO '.$table;
|
||||
$sql .= $this->set_string($data);
|
||||
|
||||
return $this->save_data($sql);
|
||||
} // end create_one
|
||||
|
||||
protected function update_one($table, $data) {
|
||||
$sql = 'UPDATE '.$table;
|
||||
$sql .= $this->set_string($data);
|
||||
|
||||
$sql .= ' WHERE '.$this->get_id_name($table);
|
||||
$sql .= '='.$this->db->real_escape_string($this->id);
|
||||
|
||||
$this->save_data($sql);
|
||||
|
||||
return $this->id;
|
||||
} // end update_one
|
||||
|
||||
private function get_id_name($table) {
|
||||
return substr($table, 0, -1).'_id';
|
||||
} // end get_id_name
|
||||
|
||||
protected function enrich($object) {
|
||||
return $object;
|
||||
} // end enrich
|
||||
}
|
||||
Reference in New Issue
Block a user