क्या कोई मॉड्यूल या एक्सटेंशन apache/php सर्वर में निर्दिष्ट किए बिना उसी नाम से फ़ॉर्म पोस्ट मान प्राप्त करने के लिए ज़िम्मेदार है?

अधिक समझाने के लिए:

मेरे पास एक फॉर्म है

<label for='usernameid'>Username:</label> 
<input type='text' name='username' id='usernameid' tabindex='1' maxlength='45'/>

<label for='password'>Password:</label>
<input type='password' name='password' id='password' tabindex='2' maxlength='45'/>

इस फॉर्म को सबमिट करने के बाद, अगले php पेज में वे रिट्रीविंग के साथ सीधे नीचे दिए गए वैल्यू को चेक कर रहे हैं। मेरे देव सर्वर में यह काम करता है

if (isset($username) && isset($password))

जबकि स्थानीय वैम्पसेवर में यह काम नहीं करता है? मुझे इसके लिए किस विस्तार या मॉड्यूल की आवश्यकता है।

मैं अब इसे लॉगिन पेज के काम करने के लिए लिख रहा हूं।

$username = $_POST['username'];
$password = $_POST['password'];

फिर if (isset($username) && isset($password))

अब मैं पूरे प्रोजेक्ट में कोड नहीं बदल सकता क्योंकि हर जगह उन्होंने पोस्ट वेरिएबल असाइन नहीं किया है।

1
Sucheta P 18 नवम्बर 2019, 14:42
1
आपको PHP के लंबे पुराने register_globals तंत्र पर निर्भर होना चाहिए, और यदि वह अभी भी काम करता है, तो आपको स्थानीय रूप से पुराने PHP संस्करण का उपयोग करना चाहिए। ऐसे पैरामीटर तक पहुंचने के लिए $_POST का उपयोग करना है ऐसा करने का सही तरीका है।
 – 
04FS
18 नवम्बर 2019, 15:09

1 उत्तर

यह register_globals है।

इसमें सुरक्षा जोखिम थे और PHP के किसी भी संस्करण में मौजूद नहीं है जो अभी भी समर्थित है।

इसे प्राप्त करने के लिए आपको PHP 4.3 पर वापस जाना होगा जो जीवन के अंत 14 वर्ष तक पहुंच गया था, 7 माह पहले ।

1
Quentin 18 नवम्बर 2019, 16:02
आपकी मदद के लिए धन्यवाद.. हाँ यह register_globals एक्सटेंशन है। मैं PHP के उच्च संस्करण का उपयोग कर रहा हूं इसलिए यह एक्सटेंशन उपलब्ध नहीं था। मैं प्रोजेक्ट को स्थानीय सर्वर में कैसे चला सकता हूं? क्या मुझे प्रत्येक चर के लिए $_POST का उपयोग करने की आवश्यकता है? या कोई और रास्ता है?
 – 
Sucheta P
21 नवम्बर 2019, 08:37
$_POST का प्रयोग करें। ऐसे हैक हैं जिनका आप उपयोग कर सकते हैं, लेकिन वे register_globals के सभी सुरक्षा जोखिमों को वापस लाते हैं, इसलिए मैं अच्छे विवेक से उनका वर्णन नहीं कर सकता।
 – 
Quentin
25 नवम्बर 2019, 16:45