2010-03-08 21 views
8

से एक फ़ॉर्म सबमिट करना मैं एक ईमेल से एक फॉर्म जमा करने के लिए एक परियोजना पर काम कर रहा था। परिदृश्य यह है। हम उन ईमेल की सूची में एक फॉर्म भेजेंगे जहां ग्राहक को फॉर्म भरना होगा और एक बार सबमिट करने के बाद, फॉर्म सबमिट किया जाना चाहिए और सर्वर भरने वाले व्यक्ति द्वारा प्रदान किए गए मूल्यों को पुनर्प्राप्त करने में सक्षम होना चाहिए। जब ​​मैं कोशिश की, यह फॉर्म सबमिट करने के रूप में सबमिट बटन पर विचार नहीं कर रहा था और कोई कार्रवाई नहीं की जा रही है। क्या कोई इसे हल करने में मेरी मदद कर सकता है। अग्रिम में धन्यवाद।ईमेल

+0

आप इसे क्या लिख ​​रहे हैं? क्या आपके पास अपनी समस्या का प्रदर्शन करने के लिए कोड है? अधिक जानकारी के बिना मदद करने के लिए हम इतना कुछ नहीं कर सकते हैं। – JasCav

+3

आप यहां एक हारने वाली लड़ाई लड़ रहे हैं। बहुत से ईमेल क्लाइंट गंभीर रूप से प्रतिबंधित करेंगे कि आप एक HTML ईमेल में उस मार्कअप में किस मार्कअप को शामिल कर सकते हैं, जहां बहुत सारी कार्यक्षमता असंभव है। जीमेल, याहू! मेल और हॉटमेल विशेष रूप से चुनौतीपूर्ण हैं। मैं एक वेब सर्वर पर फॉर्म होस्ट करने और ईमेल से एक लिंक साबित करने की सलाह देते हैं। आप ईमेल से काम करने के लिए फॉर्म प्राप्त करने का प्रयास कर अपना समय बर्बाद कर रहे हैं। – Asaph

+0

सबसे प्रभावशाली मामला नया आउटलुक है। पूरी तरह से पाठ इनपुट/textarea और बटन को हटा रहा है। – Shikiryu

उत्तर

7

एचटीएमएल फॉर्म और क्लाइंट साइड कोड आमतौर पर अधिकांश ईमेल क्लाइंट से प्रतिबंधित होते हैं। यह एक स्पष्ट हमले वेक्टर है और एचटीएमएल आधारित ईमेल से निपटने के दौरान आपकी क्षमताओं सीमित हैं।

मैं एक वेब पेज पर एक लिंक प्रदान करने की सिफारिश करता हूं।

2

भेजने से ईमेल के माध्यम से एक पर्चा संभव है, कोड मैं (PHP SwiftMailer का प्रयोग करके) ईमेल भेजने के लिए लिखा था,

//Create the Transport 
$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, "ssl") 
    ->setUsername('[email protected]') 
    ->setPassword('*****') 
    ; 
//Create the Mailer using your created Transport 
$mailer = Swift_Mailer::newInstance($transport); 
//Create a message 
$message = Swift_Message::newInstance('Fill the form') 
    ->setFrom(array('[email protected]' => 'Harry')) 
    ->setTo(array('[email protected]','[email protected]')) 
    ->setBody('<html>' . 
      ' <head></head>' . 
      ' <body>'. 
      ' <form action="http://www.our_domail.com/index.php" method="get">'. 
      ' <label>Name: </label><input type="input" id="name" name="name"/><br/>' . 
      ' <label>phone: </label><input type="input" id="phone" name="phone" /><br/>'. 
      ' <label>About you: </label><br/>'. 
      ' <textarea id="about" name="textb"></textarea> <input type="submit" value="submit" />'. 
      ' </form>'. 
      ' </body>' . 
      '</html>', 
      'text/html') 
    ; 
    //Send the message 
    if ($mailer->send($message)) 
    { 
    echo "Sent\n"; 
    } 
    else 
    { 
    echo "Failed\n"; 
    } 

मेल बॉक्स में मैं फार्म, मिल गया जो You are submitting information to an external page. Are you sure? जैसे शो कुछ संदेश प्रस्तुत करने पर और Although this page is encrypted, the information you have entered is to be sent over an unencrypted connection and could easily be read by a third party. Are you sure you want to continue sending this information? जारी रखने पर क्लिक करने पर, यह फ़ॉर्म में डेटा के साथ मेरे सर्वर पर पोस्ट हो जाता है। मुझे यकीन नहीं है कि हम अपने रूपों में जावास्क्रिप्ट सत्यापन या सीएसएस स्टाइलशीट का उपयोग कर सकते हैं। नोट: This was tested in Gmail server and i don't know about other mail servers.

असल में यह मेरे लिए काम करता है, उम्मीद है कि इससे आपको भी मदद मिलेगी ..

+1

जाहिर है दृष्टिकोण में काम नहीं करेंगे: http://www.campaignmonitor.com/resources/will-it-work/forms/ –