मैं <form method="post">
का उपयोग करके एक साधारण लॉगिन सिस्टम बनाने की कोशिश कर रहा हूं। सबकुछ मेरे लैपटॉप पर एमएएमपी पर ठीक काम करता है लेकिन जब मैं सर्वर (विंडोज) पर स्क्रिप्ट अपलोड करता हूं तो यह काम नहीं करता है; ऐसा लगता है कि $ _POST सरणी खाली है।
मैंने सब कुछ लेकिन बेयर हड्डियों पर टिप्पणी की और यह अभी भी काम नहीं करता है।
index.php:
<form id="login-form" method="POST" action="_scripts/check_login.php">
Email Address
<input name="login-email" type="text" id="login-email">
Password
<input name="login-password" type="text" id="login-password">
<input type="submit" name="Submit" id="login-button" value="Login">
</form>
_scripts/check_login.php: (मैं डिबगिंग के लिए कुछ var_dumps के अलावा सब कुछ हटा दिया है)
var_dump($_POST);
$loginEmail = trim($_POST['login-email']);
echo '<br>';
$loginPassword = ($_POST['login-password']);
var_dump($loginEmail);
echo '<br>';
var_dump($loginPassword);
जब मैं कोई फर्क नहीं पड़ता रूप है, प्रस्तुत है कि मैं क्या पाठ फ़ील्ड में डाल, मैं इस देखें:
array(0) { }
string(0) ""
NULL
अगर मैं एक में "पोस्ट" "प्राप्त" करने के लिए के सभी उदाहरणों को बदलने दो फाइलों को हल करें, सबकुछ ठीक काम करता है। लेकिन मैं पाने का उपयोग नहीं करना चाहता। ($ _REQUEST काम नहीं करता है अगर मैं विधि = "पोस्ट" का उपयोग कर फॉर्म जमा करता हूं)।
एनबी यह सब स्थानीयहोस्ट पर ठीक काम करता है, लेकिन सर्वर पर नहीं (जो विंडोज चल रहा है।) तो यह सर्वर के साथ एक समस्या प्रतीत होता है, लेकिन मुझे नहीं पता कि क्या। आप यहां PHPInfo देख सकते हैं: http://brailleapps.org/phpinf0.php
कोई विचार?
संपादित करें: हल हो गया! निचे देखो।
http://www.iis.net/configreference/system.webserver/security/requestfiltering/verbs
क्या '$ _SERVER' पोस्ट अनुरोध के लिए होती है? क्या आपने enctype कोशिश की? क्या फास्टसीजीआई क्लाइंट को आईआईएस के लिए [POST क्रिया) प्राप्त करने की अनुमति है (http: // stackoverflow।com/प्रश्न/313,188/खाली बाद सरणी में php-5-2-6-आईआईएस-cgi)? – mario
हमारे पास एक ही समस्या थी लेकिन हम लाइव सर्वर पर जाने के बाद AJAX पोस्ट काम नहीं कर रहे थे। एक लंबे संघर्ष के बाद हमने पाया कि सर्वर का मॉड रीराइटिट मॉड्यूल बंद हो गया है। एक बार चालू हो जाने पर सब कुछ ठीक है। तो इसे जांचें। लेकिन मेरे ज्ञान के अनुसार पोस्ट और मोड रीराइट के साथ कोई संबंध नहीं है। बस इसे आज़माएं। – Samy
यह सामग्री प्रकार के साथ एक मुद्दा हो सकता है। यदि कोई सामग्री प्रकार पुन: संक्रमित नहीं है या यह गुम है, तो '$ _POST' खाली है। 'अगर (खाली ($ _ सर्वर [' CONTENT_TYPE '] सेटिंग) को सेट करने का प्रयास करें) {$ _SERVER [' CONTENT_TYPE '] = "एप्लिकेशन/एक्स-www-form-urlencoded";} '। और 'var_dump (file_get_contents ('php: // input') क्या करता है; 'कहें? – Quasdunk