Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tạo mảng cho PDO từ các biến được truyền từ jquery

Tôi không chắc liệu tôi đã giải quyết vấn đề của bạn theo cách chính xác hay chưa nhưng bạn có thể thử (hoặc nhận xét nếu tôi hiểu sai).

Thay thế đoạn này:

$stmt = $dbh->prepare("SELECT COUNT(guid) FROM full_db2 WHERE {$firstpara} = :{$firstpara} AND {$secondpara} = :{$secondpara} AND {$thirdpara} = :{$thirdpara}");

$stmt->execute($data);

với cái này:

$validKeys = array('gender','maritalstatus', 'age');
    $sql = 'SELECT COUNT(guid) FROM full_db2';
    $any_condition = false;
    foreach($_GET as $key=>$val) {
       if (!empty($val) && in_array($key,$validKeys)) {
         if ($any_condition) {
           $sql .= ' AND '.$key.' = :'.$key;
         } else {
           $sql .= ' WHERE '.$key.' = :'.$key;
           $any_condition = true;
         }
       }
    }

    $stmt = $dbh->prepare($sql);

    foreach($_GET as $key=>$val) {

   if (!empty($val)  && in_array($key,$validKeys)) {
     $stmt ->bindValue(':'.$key, $val, PDO::PARAM_STR);
   }
}

$stmt->execute();

cho yêu cầu ajax của bạn, chỉ cần đọc tại đây: Gửi biểu mẫu bằng jQuery

trong yêu cầu ajax của bạn thay đổi định dạng dòng từ:data: {firstpara: para1, secondpara: para2 ,thirdpara: para3}

đến dữ liệu data: {age: para1, maritalstatus: para2 ,gender: para3},




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Left Outer Join không trả về tất cả các bản ghi từ bảng chính

  2. Cách nhanh nhất để chèn / cập nhật một triệu hàng trong Laravel 5.7

  3. Cấu trúc cơ sở dữ liệu Drupal - Hiệu quả / Không hiệu quả?

  4. thay đổi bảng thêm ... trước `mã`?

  5. SQL / MySQL - Thứ tự theo độ dài của cột