alvarogtc Posted January 24, 2015 Share Posted January 24, 2015 how i can make a insert using this fuctions I m learning php, as using this functions (mysqli abstract) but after update wont work any more. /** insert data array */ public function insert(array $arr) { if ($arr) { $q = $this->make_insert_query($arr); $return = $this->modifying_query($q); $this->autoreset(); return $return; } else { $this->autoreset(); return false; } } complement /** insert query constructor */ protected function make_insert_query($data) { $this->get_table_info(); $this->set_field_types(); if (!is_array(reset($data))) { $data = array($data); } $keys = array(); $values = array(); $keys_set = false; foreach ($data as $data_key => $data_item) { $values[$data_key] = array(); $fdata = $this->parse_field_names($data); foreach ($fdata as $key => $val) { if (!$keys_set) { if (isset($this->field_type[$key])) { $keys[] = '`' . $val['table'] . '`.`' . $val['field'] . '`'; } else { $keys[] = '`' . $val['field'] . '`'; } } $values[$data_key][] = $this->escape($val['value'], $this->is_noquotes($key), $this->field_type($key), $this->is_null($key), $this->is_bit($key)); } $keys_set = true; $values[$data_key] = '(' . implode(',', $values[$data_key]) . ')'; } $ignore = $this->ignore ? ' IGNORE' : ''; $delayed = $this->delayed ? ' DELAYED' : ''; $query = 'INSERT' . $ignore . $delayed . ' INTO `' . $this->table . '` (' . implode(',', $keys) . ') VALUES ' . implode(',', $values); return $query; } before update this class i used to insert data like this $db = Sdba::table('users'); $data = array('name'=>'adam'); $db->insert($data); this method of insert dont works on new class. if i try like this i got empty columns and empty values. thanks for any help complete class download http://goo.gl/GK3s4E Link to comment https://forums.phpfreaks.com/topic/294204-insert-data-on-mysql-using-mysqli-function/ Share on other sites More sharing options...
ginerjm Posted January 24, 2015 Share Posted January 24, 2015 Is this homework? NO help from me if it is. And if you are trying to learn, why not try to write your own code and actually LEARN something before copying somebody's object-oriented code? Link to comment https://forums.phpfreaks.com/topic/294204-insert-data-on-mysql-using-mysqli-function/#findComment-1504105 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.