एक प्रोजेक्ट में जिसे मैं लपेटने वाला हूं, मैंने PHP के लिए ऑब्जेक्ट-रिलेशनल मैपिंग समाधान लिखा और कार्यान्वित किया है। दुश्मनों और सपने देखने वालों से पहले "पृथ्वी पर कैसे?" रोते हैं, आराम करो - मुझे देर से स्थिर बाध्यकारी काम करने का कोई रास्ता नहीं मिला है - मैं बस इसके आसपास काम कर रहा हूं कि मैं संभवतया कर सकूं।PHP + MYSQLI: तैयार कथन के साथ परिवर्तनीय पैरामीटर/परिणाम बाध्यकारी
वैसे भी, मैं वर्तमान में पूछताछ के लिए तैयार बयानों का उपयोग नहीं कर रहा हूं, क्योंकि मैं bind_params()
या bind_result()
विधियों के लिए तर्कों की एक चर संख्या को पारित करने के तरीके से नहीं आ सकता था।
मुझे तर्कों की एक चर संख्या का समर्थन करने की आवश्यकता क्यों है, आप पूछते हैं? क्योंकि मेरे मॉडल के सुपरक्लास (हैक-अप PHP ActiveRecord wannabe के रूप में मेरे समाधान के बारे में सोचें) जहां क्वेरीिंग परिभाषित की गई है, और इसलिए खोज() विधि, उदाहरण के लिए, यह नहीं जानती कि इसे कितने पैरामीटर को बांधना होगा ।
अब, मैंने पहले से ही एक तर्क सूची बनाने और eval() को एक स्ट्रिंग पास करने के बारे में सोचा है, लेकिन मुझे यह समाधान बहुत पसंद नहीं है - मैं बस अपनी सुरक्षा जांच को लागू करना चाहता हूं और पास करना चाहता हूं बयान।
क्या किसी को यह करने के तरीके के बारे में कोई सुझाव (या सफलता की कहानियां) है? यदि आप इस पहली समस्या को हल करने में मेरी मदद कर सकते हैं, तो शायद हम परिणाम सेट को बाध्य करने से निपट सकते हैं (मुझे लगता है कि कुछ संदेह होगा, या कम से कम अधिक संसाधन-गहन होगा यदि इसमें तालिका संरचना निर्धारित करने के लिए प्रारंभिक क्वेरी शामिल है)।
मुझे लगता है कि समारोह नाम '' बजाय bindparams' की bind_param' किया जाना चाहिए। कम से कम मेरे 'mysqli' संस्करण के साथ मैं इसे' $ stmt-> bind_param() 'टाइप कर रहा हूं,' $ stmt-> bindparams() '। चीयर्स! –