sql >> Databasteknik >  >> RDS >> Mysql

Skapa array för PDO från variabler som skickas från jquery

Jag är inte säker på om jag fick ditt problem på rätt sätt, men du kan försöka (eller kommentera om jag fick fel).

Ersätt detta fragment:

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

$stmt->execute($data);

med detta:

$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();

för din ajax-förfrågan läs bara här:Skicka ett formulär med jQuery

i din ajax begäran ändra radformat från:data: {firstpara: para1, secondpara: para2 ,thirdpara: para3}

tilldata: {age: para1, maritalstatus: para2 ,gender: para3},




  1. Kontrollera hur många postförsändelser som finns i kön i Databas Mail i SQL Server (T-SQL)

  2. java.sql.SQLException:Ingen databas har valts

  3. Implementera sökning (hoppa över / ta) funktionalitet med denna fråga

  4. Hur man använder GROUP BY-sats i SQL