जब मेरी PHP स्क्रिप्ट को AJAX POST अनुरोध से डेटा प्राप्त होता है, तो $_POST
चर से बच निकलता है। वास्तव में अजीब चीज यह है कि यह केवल मेरे उत्पादन सर्वर (लिनक्स पर PHP 5.2.12 चल रहा है) पर होता है और मेरे स्थानीय सर्वर पर नहीं (विंडोज़ पर PHP 5.3.1 चल रहा है)।
var pageRequest = false;
if(window.XMLHttpRequest) pageRequest = new XMLHttpRequest();
else if(window.ActiveXObject) pageRequest = new ActiveXObject("Microsoft.XMLHTTP");
pageRequest.onreadystatechange = function() { }
var q_str = 'data=' + " ' ";
pageRequest.open('POST','unnamed_page.php',true);
pageRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
pageRequest.setRequestHeader("Content-length", q_str.length);
pageRequest.setRequestHeader("Connection", "close");
pageRequest.send(q_str);
है तो ऐसा कोई कारण यह हो रहा है:
यहाँ AJAX कोड है? और मुझे इसे कैसे ठीक करना चाहिए ताकि यह दोनों सर्वरों पर काम करे?
संपादित करें:
Local Master
magic_quotes_gpc On On
magic_quotes_runtime Off Off
magic_quotes_sybase Off Off
और यह मेरे स्थानीय को नहीं तोड़ देगा सर्वर? बस यह सुनिश्चित करना चाहते हैं कि मुझे यह मिल जाए ... –
@ जॉर्ज यदि आप वर्णन के अनुसार चेक करते हैं, तो यह आपके स्थानीय सर्वर के साथ काम करेगा, क्योंकि 'get_magic_quotes_gpc() 'झूठी वापसी करेगा, और कोई भी स्लैश नहीं हटाया जाएगा। इसे आज़माएं, फ़ंक्शन का परीक्षण आउटपुट करें। लेकिन सबसे अच्छी बात वास्तव में लिनक्स मशीन पर जादू उद्धरण को अक्षम करना होगा। आप एक 'phpinfo()' कर सकते हैं, यह आपको बताएगा कि क्या सक्षम है और क्या नहीं है –
@ जॉर्ज यह स्लैश के साथ प्रासंगिक डेटा से स्वचालित रूप से बचकर एसक्यूएल इंजेक्शन को रोकने के लिए एक सुरक्षा उपाय था। मूल रूप से बुरा विचार नहीं, लेकिन यह कभी पकड़ा नहीं गया पर, और अंततः आपके मामले द्वारा सचित्र रूप से एक उपद्रव बन गया। –