2012-06-25 23 views
32

में HTTP विधि का पता लगाने के लिए कैसे मैं कोडइग्निटर नियंत्रक कक्षा में HTTP विधि का पता लगा सकता हूं?कोडइग्निटर

संपादित: वहाँ CodeIgniter में $_SERVER['REQUEST_METHOD'] का उपयोग करने से किसी भी अन्य रास्ता नहीं है?

+1

संभव डुप्लिकेट http://stackoverflow.com/questions/359047/php-detecting-request -type-get-post-put-or-delete) – Esailija

+0

मुझे पता है, लेकिन क्या यह CodeIgniter में '$ _SERVER' चर का उपयोग करना सच है? –

+0

जैसे कि आप किसी भी अन्य चर – Esailija

उत्तर

52

Branden के लिए धन्यवाद, मैं इस सवाल का जवाब मिल गया है। $this->input->server($index)$_SERVER[$index] के समान है।

विधि प्राप्त करने के लिए आप इसका उपयोग कर सकते हैं: $this->input->server('REQUEST_METHOD')

अद्यतन: (धन्यवाद Ecir Hana करने के लिए)

CodeIgniter 3 के रूप में, method का उपयोग करते हुए भी संभव है:

echo $this->input->method(TRUE); // Outputs: POST 
echo $this->input->method(FALSE); // Outputs: post 
echo $this->input->method(); // Outputs: post 
4

आप इनपुट लाइब्रेरी का उपयोग कर जीईटी और पोस्ट का पता लगा सकते हैं।

$this->input->post() या $this->input->get()

अधिक जानकारी पाया जा सकता है: http://ellislab.com/codeigniter%20/user-guide/libraries/input.html

+6

दस्तावेज़ों से '$ this-> इनपुट-> पोस्ट(); // XSS फ़िल्टर के बिना सभी पोस्ट आइटम लौटाता है, इसलिए यह वास्तव में प्रश्न का उत्तर नहीं देता है। चूंकि यह HTTP विधि का पता लगाने के बजाय डेटा प्राप्त करता है। –

+1

काम नहीं करता है (उदाहरण के लिए पोस्ट) अनुरोध में कोई डेटा नहीं है। – Korri

14

CodeIgniter 3 में, आप उपयोग कर सकते हैं method uhm ... विधि इनपुट कक्षा का।

डॉक्स से:

echo $this->input->method(TRUE); // Outputs: POST 
echo $this->input->method(FALSE); // Outputs: post 
echo $this->input->method(); // Outputs: post 
की ([पीएचपी अनुरोध प्रकार (, प्राप्त पोस्ट, डाल या हटाना) का पता लगाने]