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

mysql फ़ंक्शन में एक गतिशील PHP डालने का निर्माण?

यह वही है जो हम एक समान काम करने के लिए उपयोग करते हैं (एक ऐसी तालिका में सम्मिलित करना जिस पर हमारा कोई नियंत्रण नहीं है, और जिसका कोई एपीआई एक्सेस नहीं है)

DESCRIBE क्वेरी का उपयोग सुनिश्चित करता है कि केवल मौजूद कॉलम ही डाले गए हैं।

$db = new DB();
$sql = 'DESCRIBE `table`';
$result = $db->query($sql);
$row = array();
$query = array();

while ($row = $result->fetchRow())
{
    if (array_key_exists($row['field'], $form_data))
        if (is_null($form_data[$row['field']]))
            $query[$row['field']] = 'NULL';
        else
            $query[$row['field']] = $db->quote($form_data[$row['field']]);
}

$keys = array_keys($query);

foreach ($keys as &$key)
    $key = $db->quoteIdentifier($key);

unset($key);

$vals = array_values($query);

$sql = 'INSERT INTO `table` '
     . '(' . implode(', ', $keys) . ') '
     . 'VALUES(' . implode(', ', $vals) . ')';

संपादित करें:डीबी() एमडीबी 2 के आसपास हमारा रैपर है।

और निश्चित रूप से यह उन्हें पूरी पंक्ति भरने की अनुमति देता है। यदि आपके पास प्रतिबंधित कॉलम हैं (ऑटो-इन्क्रीमेंट आईडी और ऐसे), तो आपको उन्हें फॉर्म डेटा से फ़िल्टर करना होगा...




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. फ़ील्ड नाम (उर्फ हेडर या कॉलम नाम) सहित टेक्स्ट फ़ाइल में एक MySQL तालिका को निर्यात/डंप कैसे करें

  2. आईओएस - mySQL (अपाचे) और आईओएस (NSDate) के बीच टाइमस्टैम्प का उचित स्वरूपण

  3. अजगर pymysql.err.OperationalError:(2013, 'क्वेरी के दौरान MySQL सर्वर से कनेक्शन खो गया')

  4. डेटाबेस तालिकाएँ, एकाधिक असंबंधित तालिकाओं को संदर्भित करने वाली एक तालिका

  5. mysql में पिछले एक सप्ताह के रिकॉर्ड का चयन करें