कैसे PHP का प्रयोग एक ईमेल पते की पुष्टि की

PHP में ShortLikeAFox द्वारा अगस्त में, 2008 5 वीं पोस्ट

तो क्या आप एक उपयोगकर्ता के ईमेल पते की पुष्टि की आवश्यकता है? कोई समस्या नहीं है. वहाँ ईमेल की पुष्टि की आवश्यकता करने के लिए कारणों का एक बहुत हैं, और PHP इसे आसान बना देता है.

ईमेल की पुष्टि के पूरा किया जा सकता है इन चरणों का है:

  1. तुम उन से (अपने ईमेल पते सहित जरूरत है जो जानकारी के लिए उपयोगकर्ता Prompt)
  2. एक डाटाबेस में इस डेटा इनपुट
  3. उपयोगकर्ता एक विशेष पुष्टि कुंजी के साथ एक ईमेल भेजें
  4. एक बार पुष्टि के मुख्य प्रवेश कर रहा है "" इस डाटाबेस में डाटा अनलॉक.

यह कैसे करना है:

<? PHP

/ / पहले, के डाटाबेस से कनेक्ट करते हैं

$ USER_NAME = "dbUserName";
$ मेजबान = "dbHost";
$ my_password = "dbPassword";
$ db_name = "dbName";

/ / सर्वर और डेटाबेस का चयन करने के लिए कनेक्ट.
, "$user_name" , "$my_password" ) or die ( "cannot connect to server" ); "मेजबान (" $ mysql_connect, "$ USER_NAME", "$ my_password") या मर ( "सर्वर से") कनेक्ट नहीं कर सकते हैं;
) or die ( "cannot select DB" ); mysql_select_db ( "$ db_name") या मर ( "") DB का चयन नहीं कर सकते हैं;

यदि उपयोगकर्ता के फार्म करने की जरूरत है / / निम्नलिखित पंक्ति मूलतः पूछे प्रदर्शित. पढ़ें नीचे एक छोटा यदि आप चाहते हैं, जहां चर से आ देखने के लिए

(@ $_GET [ 'first' ] == "no" ) && ! (@ $_GET [ 'confirm' ] == "yes" ){ अगर (! (@ $ _GET [ 'पहली बार'] == "नहीं") & &! (@ $ _GET [ 'पुष्टि'] == "हाँ") (
/ / चूंकि इस पृष्ठ का पहला प्रदर्शन और कोई पुष्टि कोड है हम बाहर भरने के लिए उपयोगकर्ता के लिए फार्म का प्रदर्शन करना चाहिए शामिल है
/ / यह फार्म सिर्फ एक तर्क (प्रयोक्ता का ईमेल पता) लेता है.
?>

method= "post" action= "index.php?first=no" > <form name= "emailConfirmation" method= "post" action= "index.php?first=no">

<table align="center">
<tr>
<td>
type= "text" id= "email" size= "30" /> ईमेल: <input name= "email" type= "text" id= "email" size= "30" />
</ td>
</ tr>
<tr>
<td align="center">
name= "Submit" value= "Submit" /> <input type= "submit" name= "Submit" value= "Submit" />
</ td>
</ tr>
</ table>
</ फार्म>

<? PHP

)

/ / यदि फ़ॉर्म को भर दिया गया है, हम एक पुष्टिकरण कोड उत्पन्न करने के लिए, एक डाटाबेस में पुष्टि कोड और उपयोगकर्ता ईमेल डालें, जरूरत है और इस ईमेल पते पर एक ईमेल भेजते हैं.
[ 'first' ] == "no" ){ //if the form has been filled out… elseif (@ $ _GET [ 'पहली बार'] == "नहीं") (/ / यदि फ़ॉर्म को भर दिया गया है ...

/ / is_valid_email_address नहीं एक वैध PHP समारोह है. डालें अपने खुद के ईमेल पते की जाँच समारोह यहाँ ...
is_valid_email_address( $_POST [ 'email' ])) अगर (! ($ _POST [ 'ईमेल'])) is_valid_email_address

); मान्य नहीं ( "माफ करना गूंज! आपके द्वारा दर्ज किया गया ईमेल पता है.");

/ / यदि ईमेल पता वैध दिखाई देता है और सुरक्षित ...
और (

]); $ ईमेल = ($ _POST [ 'ईमेल']);
/ / यहाँ एक पुष्टिकरण कोड उत्पन्न करें. यह मैं यह करने के लिए चुनने का तरीका है, लेकिन वहाँ है कि काम करेंगे असंख्य तरीके हैं.
( rand ())); $ = md5 CONFIRMATION_CODE ((रैंड ())); uniqid
/ / सब कुछ कम या ज्यादा डेटाबेस में प्रवेश करने और फिर उपयोगकर्ता के लिए एक ईमेल भेज ठीक है
$ क्वेरी = "घुसाएँ को emailConfirmationTable (, con_code) user_email मूल्यों ( '$ ईमेल', '$ CONFIRMATION_CODE') ';
("Config Error 2223 "); $ परिणाम = mysql_query ($ क्वेरी) या मर ( "Config त्रुटि 2223");
/ / ईमेल भेजें
$ = $ करने के लिए ईमेल;
$ विषय = "आपका shortlikeafox उदाहरण पुष्टि"; / / से
$ हेडर = "से: shortlikeafox <info@shortlikeafox.com>";
/ / आपका संदेश
$ संदेश = "आपका Comfirmation लिंक! \ r \ n";
$ संदेश .= "पर क्लिक करने के लिए इस लिंक पर अपने खाते को सक्रिय \ r \ n";
जब भी मैं इस अपुष्ट ईमेल बाहर सफाई का मन समाप्त होने के साथ $ संदेश .= "यह लिंक (हर हफ्ते या तो) \ r \ n";
$ संदेश .= "http://www.shortlikeafox.com/simple-email-confirmation-example/index.php?confirm=yes&confirmCode = $ CONFIRMATION_CODE \ r \ n";
$ sentmail = मेल ($, $ विषय, $ संदेश, $ हेडर) करने के लिए;

); ( "आपके पुष्टिकरण ईमेल भेज दिया गया है गूंज!");

)

)
/ / यदि उपयोगकर्ता को अपने ईमेल में एक कड़ी से इस स्क्रिप्ट, यह पुष्टि पाया ....
[ 'confirm' ] == "yes" ){ elseif (@ $ _GET [ 'पुष्टि] == "हाँ") (
/ / इस confirmCode अपेक्षाकृत का उपयोग करने के लिए सुरक्षित बनाएँ

[ 'confirmCode' ]); $ confirmCode = mysql_real_escape_string (@ $ _GET [ 'confirmCode']);

$ क्वेरी = "चुनें * कहाँ से con_code = '$ emailConfirmationTable confirmCode' और is_confirmed ='0 '";
( "Error 234234" ); $ परिणाम = mysql_query ($ क्वेरी) या मर ( "त्रुटि 234234");
$ nrows = mysql_num_rows ($ परिणाम);
1){ ($ nrows == 1) (अगर
$ क्वेरी = "अपडेट emailConfirmationTable सेट is_confirmed ='1 'कहाँ con_code =' $ confirmCode '";
( "Config Error 222231231233 " ); $ परिणाम = mysql_query ($ क्वेरी) या मर ( "Config त्रुटि 222231231233");
($ परिणाम) यदि
); गूंज ( "ईमेल की पुष्टि!");

)
अन्यथा

); ( "") ईमेल की पुष्टि नहीं कर सका गूंज;

)

?>

यह बहुत ही में सूचना के सत्यापन के लिए याद करने के लिए जरूरी है कि किसी भी रूप में उपयोगकर्ता आवेषण. मैं, लेकिन इसके बाद के संस्करण की ईमेल पता सत्यापन के लिए एक समारोह में शामिल नहीं किया शुरू करने के लिए एक अच्छी जगह Cal Henderson का ईमेल सत्यापन समारोह है यहाँ पाया.

यदि आप कार्रवाई में इस स्क्रिप्ट देखना चाहता हूँ, तुम तो यहाँ कर सकते हैं.

एक टिप्पणी छोड़ दो