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

PHP स्क्रिप्ट को PDO में बदलने से MySQL अद्यतन क्वेरी के दौरान सिंटैक्स त्रुटि उत्पन्न होती है

यदि आप पीडीओ पर स्विच करने जा रहे हैं, तो आप तैयार कथनों और पैरामीटर बाइंडिंग का भी लाभ उठा सकते हैं। यह वास्तव में आपके प्रश्नों को बहुत बनाता है SQL इंजेक्शन से सुरक्षित है और आपके कोड को और अधिक पठनीय बनाता है। आपका क्वेरी निर्माता दृष्टिकोण चीजों को थोड़ा जटिल करता है लेकिन यह अभी भी संभव है। मैं विकास के दौरान त्रुटि रिपोर्टिंग को सक्षम करने की अत्यधिक अनुशंसा करता हूं। उदाहरण के लिए

error_reporting(E_ALL);
ini_set('display_errors', 'On');

$upd = array('name = :name', 'type = :type');
$values = array(
    'name' => $name,
    'type' => $type,
    'ride_id' => $ride_id,
    'park_id' => $park_id
);

if (!empty($topride)) {
    $upd[] = 'top_ride = :topride'; // :topride is the named parameter placeholder
    $values['topride'] = $topride; // the array key matches the named placeholder above
}
if (!empty($info)) {
    $upd[] = 'info = :info';
    $values['info'] = $info;
}
// and so on

$query = sprintf('UPDATE tpf_rides SET %s WHERE ride_id = :ride_id AND park_id = :park_id',
    implode(', ', $upd));
$stmt = $pdo->prepare($query);
$stmt->execute($values);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP डीबी वैरिएबल में अंडरस्कोर समस्याएं पैदा कर रहा है

  2. पंक्ति क्रम MySQL में बहुपंक्ति पंक्तियों को सम्मिलित करते समय

  3. जावा में स्ट्रिंग टाइमस्टैम्प से दिनांक और समय कैसे निकालें?

  4. SQL डंप को JSON में बदलें?

  5. जहां सब कुछ नहीं है