मैं इस कोड का उपयोग कर रहा है और मैं निराशा से परे हूँ:मैं पीडीओ का उपयोग करके नल मूल्य कैसे डालूं?
try {
$dbh = new PDO('mysql:dbname=' . DB . ';host=' . HOST, USER, PASS);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$dbh->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES 'utf8'");
}
catch(PDOException $e)
{
...
}
$stmt = $dbh->prepare('INSERT INTO table(v1, v2, ...) VALUES(:v1, :v2, ...)');
$stmt->bindParam(':v1', PDO::PARAM_NULL); // --> Here's the problem
PDO::PARAM_NULL, null, '',
उन सभी को असफल और इस त्रुटि फेंक:
Fatal error: Cannot pass parameter 2 by reference in /opt/...
मुझे यकीन नहीं है कि उन दोनों के बीच का अंतर है, लेकिन मैं कुछ की जांच करूंगा। धन्यवाद, आपका जवाब भी बहुत अच्छा था। – Nacho
मुझे लगता है कि यह मेरा से बेहतर जवाब हो सकता है (यदि यह वास्तव में काम करता है) –
PHP 5.3.8 + MySQL पर मेरे परीक्षण दिखाते हैं कि दोनों के बीच उत्पन्न क्वेरी में कोई अंतर नहीं है। महत्वपूर्ण हिस्सा यह प्रतीत होता है कि उत्तीर्ण मूल्य पूर्ण है और नहीं '' या '0' – Odin