bluetronix CMS में PHP और MySQL को कनेक्ट करना
इस ट्यूटोरियल में, आप अपनी खुद की डेटाबेस टेबल बनाएंगे और इसे एक CMS पृष्ठ से कनेक्ट करेंगे। व्यावहारिक उदाहरणों के माध्यम से, आप SQL कमांड INSERT, REPLACE, SELECT और UPDATE को सीखेंगे और जानेंगे कि आप अपने वेबपृष्ठ पर HTML प्लेसहोल्डर्स के माध्यम से डेटाबेस वैल्यूज कैसे प्रदर्शित करते हैं।
उदाहरण पृष्ठ बनाना
इस ट्यूटोरियल के लिए, सबसे पहले एक नया उदाहरण पृष्ठ बनाएं.
उदाहरण के लिए:
PHP MySQL उदाहरण
पृष्ठ शुरू में पूरी तरह से खाली हो सकता है।
फिर इस पृष्ठ को सामान्य HTML संपादक में खोलें और किसी भी पृष्ठ अनुभाग को जोड़ें। यह HTML क्षेत्र बाद में उस डेटा के लिए एक टेम्पलेट के रूप में कार्य करेगा जो डेटाबेस से लोड किया जाएगा।
डेटाबेस टेबल बनाना
डेटा सहेजने से पहले, आपको एक अपनी खुद की डेटाबेस तालिका की आवश्यकता है।
इसके लिए, खोलें:
डेटाबेस → नई तालिका
इस उदाहरण के लिए, हम एक तालिका का उपयोग करेंगे जिसमें ID, तारीख, शीर्षक, विवरण, और छवि के स्तंभ हैं।
ID में रिकॉर्ड की अद्वितीय ID होती है। तारीख तारीख और समय को सहेजता है। शीर्षक में शीर्षक होता है, विवरण में एक लंबा विवरण पाठ होता है और छवि में छवि का नाम होता है।
तालिका, स्तंभ, और चर के नामों को हमेशा डेवलपर ट्यूटोरियल में अंग्रेजी में उपयोग किया जाना चाहिए।
PHP कोड खोलना
तालिका बनने के बाद, आप अपने उदाहरण पृष्ठ पर वापस जाएँगे।
वहाँ खोलें:
PHP कोड
इस क्षेत्र से आप सीधे डेटाबेस पर पहुँच सकते हैं।
डेटा को INSERT या REPLACE के माध्यम से सहेजें
पहले उदाहरण में, आप पहले बनाए गए डेटाबेस तालिका में एक रिकॉर्ड सहेजेंगे।
इसके लिए सबसे पहले आवश्यक PHP चर सेट करें।
उदाहरण:
$ID = 1;
$Date = date("Y-m-d H:i:s");
$Title = "My Title";
$Description = "My Description";
$Image = "my-image.jpg";
आप इन मूल्यों को बाद में एक MySQL तैयार स्टेटमेंट के साथ संग्रहित कर सकते हैं।
डेटाबेस एक्सेस के लिए आपको सामान्यतः तैयार स्टेटमेंट का उपयोग करना चाहिए। इससे मूल्य वास्तविक SQL आदेश से अलग से संसाधित होते हैं।
REPLACE के साथ उदाहरण:
$stmt = $mysqli->prepare("REPLACE INTO ExampleTable (ID, `Date`, Title, Description, Image) VALUES (?, ?, ?, ?, ?)");
$stmt->bind_param("issss", $ID, $Date, $Title, $Description, $Image);
$stmt->execute();

उसके बाद एक बार पृष्ठ को खोलें।
उसके बाद खोलें:
डेटाबेस → देखें
वहाँ नए उत्पन्न डेटा रिकॉर्ड को दिखना चाहिए।
INSERT और REPLACE के बीच का अंतर
INSERT एक नया डेटा रिकॉर्ड जोड़ता है।
यदि पहले से ही समान अद्वितीय ID या प्राथमिक कुंजी के साथ एक रिकॉर्ड मौजूद है, तो सामान्य INSERT एक डुप्लिकेट-कुंजी त्रुटि उत्पन्न कर सकता है।
REPLACE का उपयोग तब किया जा सकता है जब एक मौजूदा रिकॉर्ड को उसी अद्वितीय ID के साथ प्रतिस्थापित करना हो।
फिक्स्ड ID के साथ परीक्षण बिंदुओं के लिए REPLACE इसलिए अक्सर प्रायोगिक होता है, क्योंकि पृष्ठ को कई बार खोला जा सकता है।
डेटा को SELECT के माध्यम से पढ़ें
अगले चरण में आप संग्रहित रिकॉर्ड को फिर से डेटाबेस से पढ़ते हैं।
उदाहरण:
$stmt = $mysqli->prepare("SELECT `Date`, Title, Description, Image FROM ExampleTable WHERE ID = ?");
$stmt->bind_param("i", $ID);
$stmt->execute();
$result = $stmt->get_result();
if($row = $result->fetch_assoc()) {
$Date = $row["Date"];
$Title = $row["Title"];
$Description = $row["Description"];
$Image = $row["Image"];
}
पढ़े गए मूल्य बाद में $Date, $Title, $Description, और $Image वेरिएबल में होते हैं।
डेटाबेस और $LayoutHTML को जोड़ें
वैश्विक CMS वेरिएबल $LayoutHTML रेंडरिंग प्रक्रिया के दौरान पृष्ठ का वर्तमान उत्पन्न HTML रखता है।
इससे आप अपने प्लेसहोल्डर्स को HTML कोड में MySQL तालिका से डेटा के साथ प्रतिस्थापित कर सकते हैं।
HTML कोड में प्लेसहोल्डर सेट करें
फिर से अपने उदाहरण पृष्ठ का HTML कोड खोलें।
आप पहले जोड़े गए पृष्ठ खंड की सामग्री को अब अपने प्लेसहोल्डर्स द्वारा प्रतिस्थापित कर सकते हैं।
उदाहरण के लिए:
__MyDate__
__MyTitle__
__MyDescription__
__MyImage__
सरल HTML उदाहरण:
<section>
<div class="container">
<img src="__MyImage__" alt="">
<small>__MyDate__</small>
<h2>__MyTitle__</h2>
<p>__MyDescription__</p>
</div>
</section>

इस पहले MySQL उदाहरण के लिए, मौजूदा अनुवाद चिह्न प्रारंभ में हटा दिए जा सकते हैं। इससे यह पहचानना आसान होता है कि कौन सी सामग्री PHP और MySQL द्वारा सीधे प्रतिस्थापित की जाती है।
लेआउट में डेटाबेस मान डालें
जब डेटा SELECT के साथ लोड हो गए हैं, आप $LayoutHTML के अंदर प्लेसहोल्डर्स को प्रतिस्थापित करते हैं।
उदाहरण:
$LayoutHTML = str_replace("__MyDate__",$Date,$LayoutHTML);
$LayoutHTML = str_replace("__MyTitle__",$Title,$LayoutHTML);
$LayoutHTML = str_replace("__MyDescription__",$Description,$LayoutHTML);
$LayoutHTML = str_replace("__MyImage__",$Image,$LayoutHTML);
इसका क्रम है:
MySQL डेटाबेस → SELECT → PHP वेरिएबल → str_replace() → $LayoutHTML → तैयार वेब पृष्ठ

डेटाबेस की सामग्री इस प्रकार सीधे मौजूदा HTML लेआउट में दिखाई जाती है।
डेटाबेस के माध्यम से सीधे परिवर्तन परीक्षण करें
खोलें:
डेटाबेस → देखें
फिर मौजूदा डेटा रिकॉर्ड को संपादित करें।
उदाहरण के लिए, आप My Title का शीर्षक New My Title पर बदल सकते हैं।
आप संबंधित BX-Image-Button के माध्यम से चित्र भी बदल सकते हैं।
सेव करने और वेबसाइट को फिर से लोड करने के बाद, परिवर्तित डेटा सीधे पृष्ठ लेआउट में प्रदर्शित होगा।
इससे निम्नलिखित के बीच एक सीधा संबंध होता है:
डेटाबेस → PHP → $LayoutHTML → वेबसाइट
डेटा को UPDATE के माध्यम से बदलें
UPDATE के साथ, आप PHP के माध्यम से एक मौजूदा डेटा रिकॉर्ड को सीधे बदल सकते हैं।
इसमें एक शर्त के माध्यम से निर्धारित किया जाता है कि कौन सा रिकॉर्ड बदला जाना चाहिए।
अपडेट चलाने के बाद, आप डेटा को फिर से SELECT के साथ लोड कर सकते हैं और फिर $LayoutHTML के माध्यम से अपने पृष्ठ पर प्रदर्शित कर सकते हैं।
सारांश
PHP और MySQL के साथ, आप bluetronix CMS के भीतर डेटा को सहेज सकते हैं, पढ़ सकते हैं और बदल सकते हैं।
INSERT या REPLACE डेटा सहेजते हैं, SELECT डेटा पढ़ता है और UPDATE मौजूदा रिकॉर्ड को बदलता है।
$LayoutHTML के माध्यम से, आप लोड किए गए डेटा को सीधे मौजूदा HTML संरचनाओं में सम्मिलित कर सकते हैं।
इससे डेटाबेस सामग्री को एक CMS पृष्ठ के HTML लेआउट के साथ साफ-सुथरा जोड़ा जा सकता है।
बहुत पूछे जाने वाले प्रश्न
ग्राहक अक्सर हमसे क्या पूछते हैं
मुझे इस PHP और MySQL ट्यूटोरियल के लिए क्या चाहिए?
आपको bluetronix CMS के लिए एक डेवलपर एक्सेस की आवश्यकता है। इसके अलावा, आपको यह भी पता होना चाहिए कि CMS-साइट-रेनडरिंग प्रक्रिया कैसे काम करती है और $LayoutHTML का क्या कार्य है।
मैं एक नया डेटाबेस तालिका कहाँ बनाता हूँ?
CMS में डेटाबेस → नई तालिका क्षेत्र खोलें।
उदाहरण में कौन-कौन से कॉलम का उपयोग किया गया है?
इस ट्यूटोरियल में कॉलम ID, Date, Title, Description और Image का उपयोग किया गया है।
मुझे Prepared Statements का उपयोग क्यों करना चाहिए?
Prepared Statements मूल SQL आदेश से दिए गए मूल्यों को अलग करते हैं और इसलिए डेटाबेस एक्सेस के लिए बनाए गए हैं।
INSERT और REPLACE के बीच क्या अंतर है?
INSERT एक नया रिकॉर्ड जोड़ता है। REPLACE उसी अद्वितीय ID या प्राथमिक कुंजी वाले मौजूदा रिकॉर्ड को बदल सकता है।
मैं डेटाबेस से डेटा कैसे पढ़ता हूँ?
इसके लिए आप एक SELECT आदेश का उपयोग करते हैं। लोड किए गए मूल्यों को आप उसके बाद PHP वैरिएबल जैसे $Title, $Description या $Image में सहेज सकते हैं।
MySQL डेटा HTML पन्ने में कैसे आयात किया जाता है?
आप पहले HTML कोड में अपने स्वयं के प्लेसहोल्डर सेट करते हैं और फिर इन्हें $LayoutHTML के भीतर str_replace() के साथ लोड किए गए डेटा बैंक मानों के साथ बदलते हैं।
मैं कैसे जांच सकता हूँ कि डेटाबेस और वेबसाइट के बीच कनेक्शन काम कर रहा है?
डेटाबेस → प्रदर्शित करें खोलें, एक मौजूदा रिकॉर्ड बदलें और फिर पन्ना फिर से लोड करें। नए मान तुरंत पृष्ठ लेआउट में दिखाई देना चाहिए।
UPDATE का उपयोग किस लिए किया जाता है?
UPDATE के साथ, आप PHP के माध्यम से पहले से मौजूद रिकॉर्ड को सीधे बदल सकते हैं।
क्या मैं वेबसाइट के लेआउट में डेटाबेस से चित्र भी उपयोग कर सकता हूँ?
हाँ। उदाहरण में, चित्र मान $Image में संग्रहीत होता है और $LayoutHTML में __MyImage__ जैसे एक विशेष प्लेसहोल्डर के माध्यम से उपयोग किया जाता है।