Friday, 15 April 2011

javascript - How to send data as an object through .post() in jQuery? -


जब मैं एक .post () अनुरोध करता हूँ जैसे

  var डेटा = $ ( इस) .serialize (); $ ('फ़ॉर्म')। ('सबमिट करें', फ़ंक्शन (ईवेंट) {event.preventDefault (); $ .post ('server.php', डेटा, फ़ंक्शन (डेटा) {$ ('# डेटा')। ('& Lt; p & gt;' + डेटा + '& lt; / p & gt;');});});  

सब कुछ काम कर रहा है - डेटाबेस से नाम पी टैग के साथ #डेटा तत्व जोड़ता है। लेकिन, जब मैं डेटा को इस तरह एक वस्तु के रूप में पारित करने का प्रयास करता हूं

  var डेटा = $ (यह)। Serialize (); $ .post ('server.php', {आईडी: डेटा}, फ़ंक्शन (डेटा) {$ ('# डेटा')। ऐप ('& lt; p & gt;' + डेटा + '& lt; / p & gt;');} );  

से यह काम नहीं करता है मैंने फ़ंक्शन के तर्क को .post () के भीतर आईडी में परिवर्तित करने की कोशिश की और संभवत: PHP फ़ाइल के अंदर .post () के तर्कों और वेरिएबल्स के नामों के हर संयोजन को बिना सफलता के भी। इस प्रश्न में मेरे .post () अनुरोध के पहले संस्करण के साथ संगत कार्यशील PHP फ़ाइल काम कर रही है:

  & lt;? Php $ id = $ _POST ['id']; $ Connection = नया mysqli ('localhost', 'root', '', 'dummy_db'); $ Query = 'dummy_db_table का चयन करें नाम WHERE id = "'। $ Id। '' ';'; $ परिणाम = $ कनेक्शन- & gt; क्वेरी ($ क्वेरी); $ पंक्ति = $ परिणाम- & gt; fetch_assoc (); प्रति पंक्ति गूंज ["नाम"]; $ कनेक्शन & gt; पास (); ? & Gt;  

कृपया ध्यान दें कि HTML फ़ाइल में आईडी के लिए इनपुट फ़ील्ड का नाम 'id' है मुझे समझ में आ रहा है कि यह एचटीएमएल के भीतर यह नाम विशेषता है जो PHP को इसके मूल्य का पता लगाने में मदद करता है, लेकिन यह मेरे बिना फार्म के एक्शन एट्रिब्यूट के जरिए PHP के कनेक्शन को निर्दिष्ट किए बिना कैसे कर रहा है? मैं यह विशेष रूप से AJAX (.post ()) के माध्यम से कर रहा हूं और AJAX उस आईडी आईडी के विषय में कुछ खास नहीं कह रहा है। मुझे यहां क्या समझ नहीं आ रहा है? इसके अलावा, मैं .post () के डेटा विशेषता के माध्यम से एक के बजाय मूल्यों का ऑब्जेक्ट भेजने के बारे में कैसे जाना होगा? धन्यवाद।

आपने यहाँ फार्म कोड नहीं जोड़ा है इसलिए मान लें कि आपके फॉर्म में दो फ़ील्ड नाम हैं और पता। असल में आपको कार्यक्रम के तहत धारावाहिक () फ़ंक्शन डालना होगा। जैसे ('सबमिट', फ़ंक्शन (इवेंट)] {event.preventDefault (); var डेटा = $ (यह) .serialize (); $ .post

  $ ('फ़ॉर्म')। ('& Lt; p & gt;' + डेटा + '& lt; / p & gt;');});} );  

अब आप अपने सर्वर.php फ़ाइल पर निम्न पंक्ति प्रिंट करते हैं:

  $ id = $ _POST ['id']; गूंज $ id;  

इससे आपको परिणाम दिखाई देंगे: name = iffi & amp; address = UK

मुझे आशा है कि यह आपकी सहायता करेगा।


No comments:

Post a Comment