Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

पीडीओ मल्टी इंसर्ट स्टेटमेंट

if(isset($_POST['title, question, tags']))

सही सिंटैक्स नहीं है

इसके बजाय आप यह कर सकते हैं:

if(isset($_POST['title']) && isset($_POST['question']) && isset($_POST['tags']))

या यहां तक ​​कि

if(isset($_POST['title'], $_POST['question'], $_POST['tags']))

इसे बिना किसी बाध्यता के निष्पादित करना आसान होगा:

डेटा डालें

function insertData($tablename, $params){
//build query string
$column_string = implode(',', array_keys($params));
$value_string = implode(',', array_fill(0, count($params), '?'));
$sql_string = "INSERT INTO {$tablename} ({$columnString}) VALUES ({$value_string})";
//prepare query
$mysqlConnection = getConnection();
$statement = $mysqlConnection->prepare($sql_string);

//execute query
$success = $statement->execute(array_values($params));

//return boolean success
return $success;
}  

लेकिन अगर आपको वास्तव में बाँधने की ज़रूरत है, तो आप इसे निम्न तरीके से कर सकते हैं:

function insertDataBind($tablename, $params){
//build query string
$column_string = implode(',', array_keys($params));
$value_string = implode(',:', array_keys($params));
$sql_string = "INSERT INTO {$tablename} ({$column_string}) VALUES (:{$value_string})";
//prepare query
$mysqlConnection = getConnection();
$statement = $mysqlConnection->prepare($sql);
//bind 
    foreach($params as $key=>$value){
        $statement->bindValue($key, $value);
    }
//execute query
$success = $statement->execute();

//return boolean success
return $success;
}

उपयोग:

if(isset($_POST['title'], $_POST['question'], $_POST['tags'])){

$params = array('title' => $_POST['title'],
                'question'=>$_POST['question'],
                'tags'=>$_POST['tags']
                );

$success = insertData('questions', $params);

if(!$success)
    echo 'Sorry failed :(';
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कैरेक्टर_सेट_कनेक्शन का उद्देश्य क्या है?

  2. PHP में बैकग्राउंड/एसिंक्रोनस राइट-बैक कैशिंग को कैसे लागू करें?

  3. सिम्फनी:ड्राइवर में एक अपवाद हुआ:mysql के साथ ड्राइवर नहीं मिला

  4. जब एक कॉलम अद्वितीय हो तो INSERT SELECT क्वेरी करें

  5. लूप PHP के लिए कॉलम नाम और मान प्राप्त करें