मैं पेपैल पर डेटा पोस्ट करने के लिए एक फॉर्म लिख रहा हूं, और यह ठीक काम करता है, मैं छिपे हुए फ़ील्ड के साथ फॉर्म बना देता हूं और उसके बाद सबमिट बटन होता है जो सबकुछ पेपैल को सबमिट करता है।ऑटो एक फॉर्म सबमिट कर रहा है (curl)
हालांकि, जब उपयोगकर्ता उस बटन पर क्लिक करता है, तो मैं और भी करना चाहता हूं, उदाहरण के लिए डेटाबेस में अपनी कार्ट स्थिति बदलें। इसलिए, जब मैं सबमिट पर क्लिक करता हूं तो उसे कुछ कोड निष्पादित करने में सक्षम होना चाहता हूं और फिर डेटा को पेपैल पर पोस्ट करना चाहता हूं।
मैं इसके लिए जावास्क्रिप्ट का उपयोग नहीं करना चाहता हूं।
इस समय मेरे विधि cURL, वापस वर्तमान पृष्ठ से फ़ॉर्म पोस्ट उपयोग कर रहा है, मैं तो जाँच $ _POST डेटा, गाड़ी की स्थिति को अद्यतन करने की तरह मेरे अन्य आदेशों करना के लिए, और फिर एक कर्ल आदेश बनाते हैं, और पेपैल में फॉर्म डेटा पोस्ट करें। अब, यह सफलतापूर्वक पोस्ट हो जाता है, लेकिन ब्राउज़र पेपैल पर नहीं जाता है।
पहले मैं सिर्फ एक स्ट्रिंग में परिणाम retirieving गया था और तब इसे बाहर गूंज और मैं देख सकता था कि पोस्ट सफल रहा पर है, तो मैं 1 इस संभालने दिया जाएगा ब्राउज़र paypal के लिए रवाना जाना CURLOPT_FOLLOWLOCATION सेट लेकिन यह does not, ऐसा लगता है कि पेपैल से कुछ सामान लेना और इसे मेरे पेज पर रखना है।
इस के लिए सही चीज का उपयोग कर रहा है? और यदि हां, तो मैं इस समस्या को कैसे प्राप्त करूं? मैं इसके लिए जावास्क्रिप्ट से दूर रहना चाहता हूं क्योंकि जावास्क्रिप्ट सक्षम उपयोगकर्ताओं के साथ ही उनके कार्ट को अद्यतन किया जाएगा।
कर्ल के लिए उपयोग करने वाला कोड नीचे है, post_data एक सरणी है जिसे मैंने बनाया है और फिर key_ valuering में key-value जोड़े को पढ़ा है।
//Set cURL Options
curl_setopt($curl_connection, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($curl_connection, CURLOPT_USERAGENT,
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, false);
curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl_connection, CURLOPT_MAXREDIRS, 20);
//Set Data to be Posted
curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_string);
//Execute Request
curl_exec($curl_connection);
धन्यवाद, मुझे उम्मीद थी कि मुझे पेपैल से कॉलबैक में ऐसा नहीं करना पड़ेगा, मैं कार्ट की स्थिति निर्धारित करना चाहता था क्योंकि यह पेपैल पर जाता है और जब वह वापस आता है तो सटीक प्रगति का ट्रैक रख सकता है और मदद कर सकता है किसी भी त्रुटि को ठीक करने के साथ, बीमार कुछ http शीर्षलेख सेट करने का प्रयास करें और देखें, लेकिन मुझे इसे कॉलबैक में करना होगा। मैंने अभी माना है कि एक फॉर्म स्वत: सबमिट करना और कार्रवाई का पालन करना आसान होगा। – cast01
मुझे लगता है कि आप अभी भी उन उपयोगकर्ताओं के लिए कर सकते हैं जिनमें जावास्क्रिप्ट सक्षम है।उन लोगों के लिए जिनके पास जावास्क्रिप्ट सक्षम नहीं है केवल कॉलबैक का उपयोग किया जाता है, लेकिन उन (बहुमत) जिनके लिए जावास्क्रिप्ट सक्षम है, आप अजाक्स कॉल में 'ऑफ-टू-पेपैल' ध्वज सेट कर सकते हैं और 'पूर्ण' सेट कर सकते हैं। कॉलबैक में ध्वज। –