जेएस ट्यूटोरियल

जेएस होम जे एस परिचय जे एस कहाँ करने के लिए जेएस आउटपुट जेएस स्टेटमेंट्स जेएस सिंटेक्स जे एस टिप्पणियाँ जेएस चर जे एस लेट जेएस कॉन्स्ट जेएस ऑपरेटर्स जे एस अंकगणित जेएस असाइनमेंट जेएस डेटा प्रकार जे एस कार्य जेएस ऑब्जेक्ट्स जेएस इवेंट्स जे एस स्ट्रिंग्स जे एस स्ट्रिंग तरीके जे एस स्ट्रिंग खोज जे एस स्ट्रिंग टेम्पलेट्स जेएस नंबर जेएस संख्या के तरीके जे एस सरणी जेएस सरणी के तरीके जेएस ऐरे सॉर्ट जेएस सरणी पुनरावृत्ति जेएस ऐरे कॉन्स्ट जे एस तिथियाँ जेएस तिथि प्रारूप जेएस तिथि प्राप्त करने के तरीके JS दिनांक सेट विधियाँ जे एस मठ जे एस रैंडम जे एस बूलियन्स जेएस तुलना जे एस शर्तें जे एस स्विच जेएस लूप फॉर In . के लिए JS लूप ओएफ के लिए जेएस लूप जेएस लूप जबकि जेएस ब्रेक जेएस Iterables जेएस सेट जेएस मैप्स जेएस टाइपोफ जे एस प्रकार रूपांतरण जेएस बिटवाइज जेएस रेगएक्सपी जे एस त्रुटियाँ जेएस स्कोप जे एस उत्थापन जेएस सख्त मोड जेएस यह कीवर्ड जेएस एरो फंक्शन जेएस क्लासेस जेएस JSON जेएस डिबगिंग जेएस स्टाइल गाइड जेएस सर्वोत्तम अभ्यास जेएस गलतियाँ जेएस प्रदर्शन जेएस आरक्षित शब्द

जेएस संस्करण

जेएस संस्करण जेएस 2009 (ES5) जेएस 2015 (ईएस6) जेएस 2016 जेएस 2017 जेएस 2018 जेएस आईई / एज जेएस इतिहास

जेएस ऑब्जेक्ट्स

वस्तु परिभाषाएँ वस्तु गुण वस्तु के तरीके वस्तु प्रदर्शन ऑब्जेक्ट एक्सेसर्स वस्तु निर्माता वस्तु प्रोटोटाइप वस्तु पुनरावर्तनीय वस्तु समूह वस्तु मानचित्र वस्तु संदर्भ

जे एस कार्य

फ़ंक्शन परिभाषाएँ फंक्शन पैरामीटर्स समारोह आमंत्रण फंक्शन कॉल समारोह लागू करें फंक्शन क्लोजर

जेएस क्लासेस

कक्षा परिचय वर्ग वंशानुक्रम क्लास स्टेटिक

जे एस एसिंक

जेएस कॉलबैक जे एस अतुल्यकालिक जे एस वादा जे एस एसिंक/प्रतीक्षा

जेएस एचटीएमएल डोम

डोम परिचय डोम तरीके डोम दस्तावेज़ डोम तत्व डोम एचटीएमएल डोम फॉर्म डोम सीएसएस डोम एनिमेशन डोम घटनाक्रम डोम इवेंट श्रोता डोम नेविगेशन डोम नोड्स डोम संग्रह डोम नोड सूचियाँ

जेएस ब्राउज़र बीओएम

जेएस विंडो जेएस स्क्रीन जेएस स्थान जेएस इतिहास जेएस नेविगेटर जेएस पॉपअप अलर्ट जेएस टाइमिंग जे एस कुकीज़

जेएस वेब एपीआई

वेब एपीआई परिचय वेब फॉर्म एपीआई वेब इतिहास एपीआई वेब संग्रहण API वेब वर्कर एपीआई वेब फ़ेच एपीआई वेब जियोलोकेशन एपीआई

जे एस अजाक्स

AJAX परिचय अजाक्स एक्सएमएलएचटीपी अजाक्स अनुरोध अजाक्स प्रतिक्रिया अजाक्स एक्सएमएल फ़ाइल अजाक्स पीएचपी अजाक्स एएसपी AJAX डेटाबेस अजाक्स अनुप्रयोग अजाक्स उदाहरण

जेएस JSON

JSON परिचय JSON सिंटैक्स जेएसओएन बनाम एक्सएमएल JSON डेटा प्रकार JSON पार्स JSON स्ट्रिंगिफ़ाई JSON ऑब्जेक्ट्स JSON सरणियाँ JSON सर्वर जेएसओएन पीएचपी जेएसओएन एचटीएमएल जेएसओएन जेएसओएनपी

जेएस बनाम jQuery

jQuery चयनकर्ता jQuery एचटीएमएल jQuery सीएसएस jQuery डोम

जेएस ग्राफिक्स

जेएस ग्राफिक्स जेएस कैनवास जे एस प्लॉटली जेएस चार्ट.जेएस जेएस गूगल चार्ट जेएस डी3.जेएस

जेएस उदाहरण

जेएस उदाहरण जेएस एचटीएमएल डोम जेएस एचटीएमएल इनपुट जेएस एचटीएमएल ऑब्जेक्ट्स जेएस एचटीएमएल इवेंट्स जेएस ब्राउज़र जे एस संपादक जे एस व्यायाम जे एस प्रश्नोत्तरी जेएस प्रमाणपत्र

जे एस संदर्भ

जावास्क्रिप्ट ऑब्जेक्ट्स एचटीएमएल डोम ऑब्जेक्ट्स


जेएसओएन पीएचपी


JSON का एक सामान्य उपयोग वेब सर्वर से डेटा पढ़ना और डेटा को वेब पेज में प्रदर्शित करना है।

यह अध्याय आपको सिखाएगा कि क्लाइंट और PHP सर्वर के बीच JSON डेटा का आदान-प्रदान कैसे करें।


पीएचपी फ़ाइल

PHP में JSON को हैंडल करने के लिए कुछ बिल्ट-इन फंक्शन हैं।

PHP में ऑब्जेक्ट को PHP फ़ंक्शन json_encode() का उपयोग करके JSON में परिवर्तित किया जा सकता है :

पीएचपी फ़ाइल

<?php
$myObj->name = "John";
$myObj->age = 30;
$myObj->city = "New York";

$myJSON = json_encode($myObj);

echo $myJSON;
?>

क्लाइंट जावास्क्रिप्ट

ऊपर दिए गए उदाहरण से PHP फ़ाइल का अनुरोध करने के लिए AJAX कॉल का उपयोग करके क्लाइंट पर एक जावास्क्रिप्ट यहां दी गई है:

उदाहरण

परिणाम को JavaScript ऑब्जेक्ट में बदलने के लिए JSON.parse() का उपयोग करें:

const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
  const myObj = JSON.parse(this.responseText);
  document.getElementById("demo").innerHTML = myObj.name;
}
xmlhttp.open("GET", "demo_file.php");
xmlhttp.send();


पीएचपी सरणी

PHP फ़ंक्शन json_encode() का उपयोग करते समय PHP में Arrays को JSON में भी परिवर्तित किया जाएगा :

पीएचपी फ़ाइल

<?php
$myArr = array("John", "Mary", "Peter", "Sally");

$myJSON = json_encode($myArr);

echo $myJSON;
?>

क्लाइंट जावास्क्रिप्ट

ऊपर दिए गए सरणी उदाहरण से PHP फ़ाइल का अनुरोध करने के लिए AJAX कॉल का उपयोग करके क्लाइंट पर एक जावास्क्रिप्ट यहां दिया गया है:

उदाहरण

परिणाम को जावास्क्रिप्ट सरणी में बदलने के लिए JSON.parse() का उपयोग करें:

var xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
  const myObj = JSON.parse(this.responseText);
  document.getElementById("demo").innerHTML = myObj[2];
}
xmlhttp.open("GET", "demo_file_array.php", true);
xmlhttp.send();

पीएचपी डेटाबेस

PHP एक सर्वर साइड प्रोग्रामिंग भाषा है, और इसका उपयोग डेटाबेस तक पहुँचने के लिए किया जा सकता है।

कल्पना कीजिए कि आपके सर्वर पर एक डेटाबेस है, और आप उस क्लाइंट से एक अनुरोध भेजना चाहते हैं जहां आप "ग्राहक" नामक तालिका में 10 पहली पंक्तियों के लिए पूछते हैं।

क्लाइंट पर, एक JSON ऑब्जेक्ट बनाएं जो उन पंक्तियों की संख्या का वर्णन करता है जिन्हें आप वापस करना चाहते हैं।

सर्वर को अनुरोध भेजने से पहले, JSON ऑब्जेक्ट को एक स्ट्रिंग में कनवर्ट करें और इसे PHP पृष्ठ के url के पैरामीटर के रूप में भेजें:

उदाहरण

जावास्क्रिप्ट ऑब्जेक्ट को JSON में बदलने के लिए JSON.stringify () का उपयोग करें:

const limit = {"limit":10};
const dbParam = JSON.stringify(limit);
xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
  document.getElementById("demo").innerHTML = this.responseText;
}
xmlhttp.open("GET","json_demo_db.php?x=" + dbParam);
xmlhttp.send();

उदाहरण समझाया:

  • "सीमा" संपत्ति और मूल्य वाली वस्तु को परिभाषित करें।
  • ऑब्जेक्ट को JSON स्ट्रिंग में कनवर्ट करें।
  • एक पैरामीटर के रूप में JSON स्ट्रिंग के साथ PHP फ़ाइल के लिए एक अनुरोध भेजें।
  • परिणाम के साथ अनुरोध वापस आने तक प्रतीक्षा करें (JSON के रूप में)
  • PHP फ़ाइल से प्राप्त परिणाम प्रदर्शित करें।

PHP फ़ाइल पर एक नज़र डालें:

पीएचपी फ़ाइल

<?php
header("Content-Type: application/json; charset=UTF-8");
$obj = json_decode($_GET["x"], false);

$conn = new mysqli("myServer", "myUser", "myPassword", "Northwind");
$stmt = $conn->prepare("SELECT name FROM customers LIMIT ?");
$stmt->bind_param("s", $obj->limit);
$stmt->execute();
$result = $stmt->get_result();
$outp = $result->fetch_all(MYSQLI_ASSOC);

echo json_encode($outp);
?>

पीएचपी फ़ाइल समझाया:

  • PHP फ़ंक्शन json_decode() का उपयोग करके अनुरोध को किसी ऑब्जेक्ट में कनवर्ट करें
  • डेटाबेस तक पहुंचें, और अनुरोधित डेटा के साथ एक सरणी भरें।
  • किसी ऑब्जेक्ट में सरणी जोड़ें, और json_encode() फ़ंक्शन का उपयोग करके ऑब्जेक्ट को JSON के रूप में वापस करें ।

डेटा का उपयोग करें

उदाहरण

xmlhttp.onload = function() {
  const myObj = JSON.parse(this.responseText);
  let text = "";
  for (let x in myObj) {
    text += myObj[x].name + "<br>";
  }
  document.getElementById("demo").innerHTML = text;
}

पीएचपी विधि = पोस्ट

सर्वर पर डेटा भेजते समय, अक्सर HTTP POSTपद्धति का उपयोग करना सबसे अच्छा होता है।

विधि का उपयोग करके AJAX अनुरोध भेजने के लिए POST, विधि और सही शीर्षलेख निर्दिष्ट करें।

send()सर्वर को भेजा गया डेटा अब विधि का तर्क होना चाहिए :

उदाहरण

const dbParam = JSON.stringify({"limit":10});
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
  const myObj = JSON.parse(this.responseText);
  let text ="";
  for (let x in myObj) {
    text += myObj[x].name + "<br>";
  }
  document.getElementById("demo").innerHTML = text;
}
xmlhttp.open("POST", "json_demo_db_post.php");
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send("x=" + dbParam);

PHP फ़ाइल में एकमात्र अंतर स्थानांतरित डेटा प्राप्त करने की विधि है।

पीएचपी फ़ाइल

$_GET के बजाय $_POST का उपयोग करें:

<?php
header("Content-Type: application/json; charset=UTF-8");
$obj = json_decode($_POST["x"], false);

$conn = new mysqli("myServer", "myUser", "myPassword", "Northwind");
$stmt = $conn->prepare("SELECT name FROM customers LIMIT ?");
$stmt->bind_param("s", $obj->limit);
$stmt->execute();
$result = $stmt->get_result();
$outp = $result->fetch_all(MYSQLI_ASSOC);

echo json_encode($outp);
?>