पीडीओ उद्धरण के अंदर प्रश्न चिह्न से भ्रमित नहीं है। मैं अभी PHP 5.5.15 के साथ इसका परीक्षण करता हूं।
$sql = "SELECT CONCAT('path/to/page/?id=', id) AS link FROM foo WHERE name = ?;";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(1, 'name');
$stmt->execute();
print_r($stmt->fetchAll());
यह ठीक काम करता है, पैरामीटर की गलत संख्या के बारे में कोई त्रुटि नहीं है। आपकी त्रुटि आपके द्वारा पैरामीटर्स को बाध्य करने के तरीके के कारण होती है, SQL सिंटैक्स द्वारा नहीं।
मुझे संदेह है कि आपने हमें पूरी SQL क्वेरी नहीं दिखाई है, क्योंकि WHERE बिना FROM वैसे भी एक सिंटैक्स त्रुटि है। इसलिए आपके पास अतिरिक्त पैरामीटर प्लेसहोल्डर होने चाहिए जो आपने हमें नहीं दिखाए हैं। यह भी मददगार होगा यदि आप हमें दिखाते हैं कि आप कैसे बाध्यकारी पैरामीटर हैं (या निष्पादित करने के लिए पैरामीटर पास कर रहे हैं ()।