conn->prepare("SELECT id FROM $tbname WHERE userName = :user"); $check->execute(array('user' => $_POST['userName'])); if($check->rowCount() > 0) { echo "อีเมลนี้มีในระบบแล้ว กรุณาใช้อีเมลอื่น"; exit; // หยุดการทำงานทันที } // 2. เติมข้อมูลให้ครบทุกฟิลด์ตามโครงสร้างตารางเป๊ะๆ (ปิดประตู Error 1364 ทุกตัว) $data = array( 'about' => '', 'userName' => $_POST['userName'], 'password' => md5('1234567890'), // รหัสผ่านเริ่มต้น 'workGroup' => $_POST['workGroup'], 'prefix' => $_POST['prefix'], 'firstName' => $_POST['firstName'], 'lastName' => $_POST['lastName'], 'nationality' => 'ไทย', 'religion' => 'พุทธ', 'dateOfBirth' => '0000-00-00', 'photo' => '', 'resume' => '', 'createDate' => date('Y-m-d H:i:s'), // เวลาปัจจุบันที่สร้าง 'updateDate' => date('Y-m-d H:i:s'), // เผื่อฟิลด์นี้ฟ้องด้วย 'status' => 'true' // อนุมัติทันที ); $res = $cdb->insert_data($tbname, $data); // ถ้า $res ว่างแปลว่าสำเร็จ ให้พ่น 0 กลับไป echo ($res == "") ? "0" : $res; break; // ลบผู้ใช้งาน case 'delete_user': $id = $_POST['id']; $res = $cdb->delete_data($tbname, "id='$id'"); echo ($res == "") ? "0" : $res; break; case 'reset_pw': $id = $_POST['id']; $new_pw = md5('1234567890'); $data = array('password' => $new_pw); $res = $cdb->update_data($tbname, $data, "id='$id'"); echo ($res == "") ? "0" : $res; break; case 'update_group': $id = $_POST['id']; $data = array('workGroup' => $_POST['workGroup']); $res = $cdb->update_data($tbname, $data, "id='$id'"); echo ($res == "") ? "0" : $res; break; case 'update_status': $id = $_POST['id']; $data = array('status' => $_POST['status']); $res = $cdb->update_data($tbname, $data, "id='$id'"); echo ($res == "") ? "0" : $res; break; case 'get_groups': $sql = "SELECT id, title FROM workGroupType ORDER BY id ASC"; $query = $cdb->conn->prepare($sql); $query->execute(); $res = array(); while($row = $query->fetch(PDO::FETCH_ASSOC)) { $res[$row['id']] = $row['title']; } echo json_encode($res); break; case '6': $page = isset($_POST['page']) ? $_POST['page'] : 1; $qpage = isset($_POST['qpage']) ? $_POST['qpage'] : 10; $start = ($page - 1) * $qpage; $sql_join = " FROM $tbname s LEFT JOIN workGroupType w ON s.workGroup = w.id WHERE 1=1 "; $param = array(); if (!empty($_POST['s_title'])) { $sql_join .= " AND (s.firstName LIKE :t OR s.lastName LIKE :t OR s.userName LIKE :t) "; $param['t'] = "%".$_POST['s_title']."%"; } if (!empty($_POST['s_status'])) { $sql_join .= " AND s.status = :st "; $param['st'] = $_POST['s_status']; } $query_c = $cdb->conn->prepare("SELECT COUNT(s.id) as total " . $sql_join); $query_c->execute($param); $row_c = $query_c->fetch(PDO::FETCH_ASSOC); $total_data = $row_c['total']; $sql = "SELECT s.*, w.title as group_name " . $sql_join . " ORDER BY s.id DESC LIMIT $start, $qpage"; $query = $cdb->conn->prepare($sql); $query->execute($param); $json_data = array(); $i = 1; while ($row = $query->fetch(PDO::FETCH_ASSOC)) { $json_data[$i] = $row; $i++; } $json_data['pagination']['state'] = "แสดง " . ($start + 1) . " - " . ($start + $query->rowCount()) . " จาก " . number_format($total_data) . " รายการ"; $json_data['pagination']['max_loop'] = ceil($total_data / $qpage); echo json_encode($json_data); break; }