- हर बार जब आप इस फ़ंक्शन को कॉल कर रहे हों तो कनेक्ट करना एक भयानक विचार है। एक अच्छे नियोजित एप्लिकेशन में ऐसी विषम सीमा नहीं होगी।
-
आप प्रतिस्थापन का उपयोग कर सकते हैं, जैसे कि
myquery("SELECT * FROM table WHERE id = %s","My string");
-
आप प्रतिस्थापन के दूसरे तरीके का उपयोग कर सकते हैं, एक आधुनिक एक:तैयार बयान। इसका वर्णन कई अन्य उत्तरों में किया जाएगा।
जैसा कि अभी तक किसी ने इसे पोस्ट नहीं किया है, यहाँ एक मोटा उदाहरण है
function fetchAll(){
$args = func_get_args();
$query = array_shift($args);
$stmt = $pdo->prepare($query);
$stmt->execute($args);
return $stmt->fetchAll();
}
$a=$db->fetchAll("SELECT * FROM users WHERE status=? LIMIT ?,?",$status,$start,$num);
- जब तक आप सिंगल-बाइट एन्कोडिंग या utf-8 का उपयोग कर रहे हैं, तब तक mysql_real_escape_string का उपयोग करने की कोई आवश्यकता नहीं है, इसलिए
mysql_escape_string(बहिष्कृत) या जोड़-तोड़ पर्याप्त होंगे