PHP Academy · पाठ

सुपरग्लोबल से फ़ॉर्म डेटा पढ़ना

_GET और _POST ऐरे के ज़रिए फ़ॉर्म फ़ील्ड तक पहुँचें

पाठ 2, कुल 4 में से13 चरण

सुपरग्लोबल से फ़ॉर्म डेटा पढ़ना, CoddyKit पर PHP Academy का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह PHP Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। PHP Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

PHP सुपरग्लोबल्स

सुपरग्लोबल्स सभी दायरों में उपलब्ध अंतर्निहित PHP ऐरे होते हैं — फ़ंक्शन के अंदर उन्हें ऐक्सेस करने के लिए आपको global की आवश्यकता नहीं होती।

फ़ॉर्म से संबंधित सुपरग्लोबल्स: $_GET, $_POST, $_FILES, $_REQUEST

$_POST फ़ील्ड तक पहुँचना

डिफ़ॉल्ट वैकल्पिक मान के साथ ऐरे कुंजी का उपयोग करके POST फ़ॉर्म के मान पढ़ें:

<?php
// Safe access with null coalescing
$username = $_POST['username'] ?? '';
$email    = $_POST['email']    ?? '';
$age      = (int) ($_POST['age'] ?? 0);

var_dump($username, $email, $age);

$_GET पैरामीटर तक पहुँचना

URL क्वेरी स्ट्रिंग के पैरामीटर $_GET से पढ़ें:

<?php
// URL: /products.php?category=electronics&page=2&sort=price

$category = $_GET['category'] ?? 'all';
$page     = max(1, (int) ($_GET['page'] ?? 1));
$sort     = in_array($_GET['sort'] ?? '', ['price', 'name', 'date'])
            ? $_GET['sort']
            : 'name';

echo "Category: $category, Page: $page, Sort: $sort";

चेकबॉक्स संभालना

चयन न किए गए चेकबॉक्स भेजे ही नहीं जाते — हमेशा isset या ?? से जाँच करें:

<?php
// HTML: <input type="checkbox" name="newsletter">

$wantsNewsletter = isset($_POST['newsletter']);
// or:
$wantsNewsletter = ($_POST['newsletter'] ?? null) !== null;

echo $wantsNewsletter ? 'Subscribed' : 'Not subscribed';

बहु-चयन और चेकबॉक्स ऐरे

कई मान एकत्र करने के लिए ऐरे-शैली के name एट्रिब्यूट का उपयोग करें:

<!-- HTML -->
<!-- <input type="checkbox" name="tags[]" value="php"> -->
<!-- <input type="checkbox" name="tags[]" value="mysql"> -->

<?php
$tags = $_POST['tags'] ?? [];

if (!is_array($tags)) $tags = [];

foreach ($tags as $tag) {
    echo htmlspecialchars($tag) . PHP_EOL;
}

$_SERVER की जानकारी

$_SERVER सर्वर और अनुरोध के परिवेश से संबंधित डेटा उपलब्ध कराता है:

<?php
echo $_SERVER['REQUEST_METHOD'];   // GET or POST
echo $_SERVER['REQUEST_URI'];       // /page.php?foo=bar
echo $_SERVER['HTTP_HOST'];         // example.com
echo $_SERVER['REMOTE_ADDR'];       // client IP
echo $_SERVER['HTTP_USER_AGENT'];   // browser string

filter_input()

filter_input() एक ही चरण में सुपरग्लोबल मानों को पढ़ता और स्वच्छ करता है:

<?php
// Retrieve and validate an integer from POST
$age = filter_input(INPUT_POST, 'age', FILTER_VALIDATE_INT);
if ($age === false) {
    echo 'Invalid age';
}

// Retrieve and sanitize a string from GET
$name = filter_input(INPUT_GET, 'name', FILTER_SANITIZE_SPECIAL_CHARS);
echo $name;

सत्यापन के लिए filter_var()

चर में पहले से मौजूद मानों का सत्यापन और स्वच्छीकरण करें:

<?php
$email = 'user@example.com';
$ip    = '192.168.1.1';
$url   = 'https://example.com';

var_dump(filter_var($email, FILTER_VALIDATE_EMAIL));  // string
var_dump(filter_var($ip,    FILTER_VALIDATE_IP));     // string
var_dump(filter_var($url,   FILTER_VALIDATE_URL));    // string

FILTER_SANITIZE बनाम FILTER_VALIDATE

filter_var के दो प्रकार:

  • FILTER_VALIDATE_* — मान सही होने पर उसे लौटाता है, अन्यथा false
  • FILTER_SANITIZE_* — खतरनाक वर्णों को हटाता या एन्कोड करता है और स्वच्छ मान लौटाता है

$_FILES संभालना

$_FILES में अपलोड की गई फ़ाइल का मेटाडेटा होता है — प्रत्येक फ़ाइल में पाँच कुंजियाँ होती हैं:

<?php
if (isset($_FILES['avatar'])) {
    $file = $_FILES['avatar'];
    
    echo $file['name'];     // original filename: photo.jpg
    echo $file['type'];     // MIME type: image/jpeg
    echo $file['size'];     // bytes: 45231
    echo $file['tmp_name']; // temp path on server
    echo $file['error'];    // 0 = no error
}

पूरे फ़ॉर्म को संसाधित करने का प्रतिरूप

सत्यापन के साथ फ़ॉर्म सबमिशन संभालने का एक साफ़ प्रतिरूप:

<?php
$errors = [];
$name   = '';

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $name = trim($_POST['name'] ?? '');
    if (empty($name)) {
        $errors[] = 'Name is required';
    }
    if (empty($errors)) {
        // process...
        header('Location: /thanks.php');
        exit;
    }
}

त्वरित जाँच

चयन न किया गया चेकबॉक्स PHP सर्वर को क्या भेजता है?

पुनरावलोकन: सुपरग्लोबल्स

फ़ॉर्म के लिए मुख्य सुपरग्लोबल्स:

  • $_GET — URL पैरामीटर
  • $_POST — अनुरोध का मुख्य भाग
  • $_FILES — अपलोड की गई फ़ाइल की जानकारी
  • $_SERVER — सर्वर और अनुरोध का परिवेश
  • सुरक्षित डिफ़ॉल्ट ऐक्सेस के लिए ?? का उपयोग करें
  • संयुक्त पुनर्प्राप्ति और सत्यापन के लिए filter_input() का उपयोग करें
शुरुआत निःशुल्क

एआई शिक्षक के साथ PHP सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
49
पाठ
195

अक्सर पूछे जाने वाले प्रश्न

क्या “सुपरग्लोबल से फ़ॉर्म डेटा पढ़ना” पाठ निःशुल्क है?

हाँ—“सुपरग्लोबल से फ़ॉर्म डेटा पढ़ना” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और PHP Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। PHP Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“सुपरग्लोबल से फ़ॉर्म डेटा पढ़ना” में मैं क्या सीखूँगा?

_GET और _POST ऐरे के ज़रिए फ़ॉर्म फ़ील्ड तक पहुँचें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ PHP Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या PHP Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर PHP Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“सुपरग्लोबल से फ़ॉर्म डेटा पढ़ना” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस PHP Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर PHP Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. GET बनाम POST: किसका उपयोग कब करें
  2. सुपरग्लोबल से फ़ॉर्म डेटा पढ़ना
  3. इनपुट सत्यापन की तकनीकें
  4. उपयोगकर्ता इनपुट को स्वच्छ करना
← PHP Academy पर वापस जाएँ