PHP PDO में अमान्य पैरामीटर संख्या त्रुटि
PDO का उपयोग करके तैयार कथन निष्पादित करने का प्रयास करते समय, आपको "SQLSTATE[HY093" त्रुटि का सामना करना पड़ सकता है ]: अमान्य पैरामीटर संख्या।" यह समस्या पैरामीटर मार्करों के गलत उपयोग के कारण उत्पन्न होती है। हैश, :समाप्त) डुप्लिकेट कुंजी अद्यतन पर हैश=:हैश
का उपयोग करते हुए पैरामीटर मानों को बाइंड करते समय निष्पादित() विधि, फ़ंक्शन निम्नलिखित मानों का उपयोग करता है:
INSERT INTO persist (user_id, hash, expire) VALUES (:user_id, :hash, :expire) ON DUPLICATE KEY UPDATE hash=:hash
हालाँकि, तैयार कथन में हैश के लिए डुप्लिकेट पैरामीटर मार्कर शामिल है, जिसकी PDO द्वारा अनुमति नहीं है। इस समस्या को हल करने के लिए, हमें पारित होने वाले प्रत्येक मान के लिए एक अद्वितीय पैरामीटर मार्कर निर्दिष्ट करने की आवश्यकता है। ) मान (:उपयोगकर्ता_आईडी, :हैश, :समाप्ति) डुप्लिकेट कुंजी अद्यतन पर हैश=:हैश2"; $stm = $db->तैयार करें($sql); $stm->निष्पादित करें( सरणी("user_id" => $user_id, "हैश" => $हैश, "समाप्ति" => $भविष्य, "हैश2" => $हैश) );
["user_id" => $user_id, "hash" => $hash, "expire" => $future]
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3