डेटा अपडेट करना बहुत आसान हो सकता है। शुरुआत के लिए एक फॉर्म से शुरू करते हैं:
<form method="post" action="submit.php">
<input type="text" name="id" value="12" />
<input type="text" name="value" value="Jonathan" />
<input type="submit" />
</form>
यह फ़ॉर्म डेटा को हमारे submit.php
. पर भेज देगा स्क्रिप्ट जहां हम इसे संभाल सकते हैं, और इसे अपने डेटाबेस में पास कर सकते हैं। चूंकि हमारी फॉर्म विधि "पोस्ट" है, हमारे सभी मान POST
. के माध्यम से भेजे जाएंगे PHP में सुपर सरणी (यदि आप फ़ाइल अपलोडर का उपयोग कर रहे हैं तो ऐसा नहीं है)। तो हमारे submit.php
. में पेज, हम इस तरह आईडी और वैल्यू वैल्यू प्रिंट कर सकते हैं:
print $_POST["id"]; // the name of the HTML element is the key
print $_POST["value"]; // again, note that we use the name as the key
आप उपयोगकर्ता द्वारा सबमिट किए गए मानों को सीधे अपने प्रश्नों में पास करने के बारे में सावधान रहना चाहेंगे, इसलिए mysql_real_escape_string()
जैसे फ़ंक्शन का उपयोग करके डेटा को साफ़ करना अच्छा है :
$id = mysql_real_escape_string( $_POST["id"] );
$value = mysql_real_escape_string( $_POST["value"] );
अगली चीज़ जो हम करना चाहेंगे, वह है इन्हें एक प्रश्न में रखना:
$sql = "UPDATE mytable SET value = '{$value}' WHERE id = {$id}";
यह एक अच्छा समय है कि यह न बताएं कि मैं आपको इस उदाहरण कोड का उपयोग लाइव वातावरण में करने के लिए प्रोत्साहित नहीं करता हूं। आप एसक्यूएल-इंजेक्शन देखना चाहेंगे, और उनसे कैसे बचें। मैं यहां जो कोड प्रदान कर रहा हूं वह केवल एक उदाहरण है। हमारे मान दर्ज करने के बाद, जो क्वेरी चलाई जाएगी वह वास्तव में इस तरह दिखती है:
UPDATE mytable SET value = 'Jonathan' WHERE id = 12
अब, इसे चलाने के लिए, हमें एक डेटाबेस से कनेक्ट होने की आवश्यकता है।
$host = "localhost";
$user = "root";
$pass = "";
$database = "myDatabase";
$conn = mysql_connect($host, $user, $pass) or die( mysql_error() );
mysql_select_db($database) or die( mysql_error() );
हम यहां केवल अपने mysql-user-account क्रेडेंशियल को सरणियों में संग्रहीत कर रहे हैं, और उन्हें एक कनेक्ट-फ़ंक्शन में पास कर रहे हैं। यह कोड बहुत ही आत्म-व्याख्यात्मक होना चाहिए, लेकिन अगर यह बिल्कुल अस्पष्ट है तो मुझे बताएं।
एक बार जब आप इसे प्राप्त कर लेंगे, तो आप अपनी क्वेरी चलाने के लिए तैयार हैं। याद रखें कि हमने इसे $sql
. नामक सरणी में संग्रहीत किया है :
$result = mysql_query( $sql ) or die( mysql_error() );
यही बात है। तुमने यह किया! डेटा, यह मानते हुए कि कुछ भी गलत नहीं हुआ, अब आपके डेटाबेस में अपडेट हो गया है। इस स्क्रिप्ट के माध्यम से उपयोगकर्ता को वापस प्रदान की गई जानकारी को बढ़ाने के कई तरीके हैं। यह भी ध्यान देने योग्य है कि आप स्क्रिप्ट को चलाने की अनुमति देने से पहले अपने डेटा को साफ करना चाहेंगे - यदि यह स्वीकार्य डेटा नहीं है (कोई अपने स्वयं के प्रश्नों को इंजेक्ट करने का प्रयास कर रहा है) तो आप इसे वापस थूकना चाहेंगे।
PHP दस्तावेज़ीकरण में MySQL फंक्शन देखें अधिक उपहारों के लिए, और जब आपके पास अधिक विशिष्ट प्रश्न हों तो यहां वापस आना सुनिश्चित करें!