예제 #1
0
 /**
  * แก้ไขข้อมูล.
  *
  * @param string $table ชื่อตาราง
  * @param array|string $idArr id ที่ต้องการแก้ไข หรือข้อความค้นหารูปแอเรย์ [filed=>value]
  * @param array $recArr ข้อมูลที่ต้องการบันทึก
  *
  * @return bool สำเร็จ คืนค่า true
  */
 public function edit($table, $idArr, $recArr)
 {
     try {
         $keys = array();
         $values = array();
         foreach ($recArr as $key => $value) {
             $keys[] = "`{$key}`=:{$key}";
             $values[":{$key}"] = $value;
         }
         if (is_array($idArr)) {
             $datas = array();
             foreach ($idArr as $key => $value) {
                 $datas[] = "`{$key}`=:{$key}";
                 $values[":{$key}"] = $value;
             }
             $where = sizeof($datas) == 0 ? '' : implode(' AND ', $datas);
         } else {
             $id = (int) $idArr;
             $where = $id == 0 ? '' : '`id`=:id';
             $values[':id'] = $id;
         }
         if ($where == '' || sizeof($keys) == 0) {
             return false;
         } else {
             $sql = "UPDATE `{$table}` SET " . implode(',', $keys) . " WHERE {$where} LIMIT 1";
             $query = $this->connection->prepare($sql);
             $query->execute($values);
             ++$this->time;
             return true;
         }
     } catch (PDOException $e) {
         Gcms::debug($e->getMessage());
         return false;
     }
 }
예제 #2
0
 /**
  * แก้ไขข้อมูล.
  *
  * @param string $table ชื่อตาราง
  * @param array|string $idArr id ที่ต้องการแก้ไข หรือข้อความค้นหารูปแอเรย์ [filed=>value]
  * @param array $recArr ข้อมูลที่ต้องการบันทึก
  *
  * @return bool สำเร็จ คืนค่า true
  */
 public function edit($table, $idArr, $recArr)
 {
     if (is_array($idArr)) {
         $datas = array();
         foreach ($idArr as $key => $value) {
             $datas[] = "`{$key}`='{$value}'";
         }
         $id = implode(' AND ', $datas);
     } else {
         $id = (int) $idArr;
         $id = $id == 0 ? '' : "`id`='{$id}'";
     }
     if ($id == '') {
         return false;
     } else {
         $datas = array();
         foreach ($recArr as $key => $value) {
             $datas[] = "`{$key}`='{$value}'";
         }
         $sql = "UPDATE `{$table}` SET " . implode(',', $datas) . " WHERE {$id} LIMIT 1";
         $query = @mysql_query($sql, $this->connection);
         if ($query == false) {
             Gcms::debug(mysql_error($this->connection));
             return false;
         } else {
             ++$this->time;
             return true;
         }
     }
 }