आप सेशन ओपन फंक्शन में अपनी तैयारी करने की कोशिश क्यों कर रहे हैं? मुझे विश्वास नहीं है कि लेखन समारोह को सत्र के दौरान एक से अधिक बार बुलाया जाता है, इसलिए इसे खुले में तैयार करना आपके लिए बहुत कुछ नहीं करता है, आप इसे अपने सत्र में भी लिख सकते हैं।
वैसे भी मेरा मानना है कि आपको टेबल नाम के बाद और कॉलम सूची से पहले कुछ सफेद जगह चाहिए। व्हाइटस्पेस के बिना मेरा मानना है कि MySQL कार्य करेगा जैसे कि आप सत्र () नामक गैर-मौजूद फ़ंक्शन को कॉल करने का प्रयास कर रहे हैं।
REPLACE INTO session (phpsessid, data) VALUES(?, ?)
दिलचस्प है, जब मैं नीचे MySQL सीएलआई में चलाता हूं तो मुझे एक अलग परिणाम मिलता है।
mysql> select count (*);
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*)' at line 1
mysql> select count(*);
+----------+
| count(*) |
+----------+
| 1 |
+----------+
1 row in set (0.00 sec)