{"id":59734,"date":"2025-04-23T15:04:04","date_gmt":"2025-04-23T07:04:04","guid":{"rendered":"https:\/\/fwq.ai\/blog\/59734\/"},"modified":"2025-04-23T15:04:04","modified_gmt":"2025-04-23T07:04:04","slug":"ecshop%e6%b3%a8%e5%86%8c%e9%a1%b5%e9%9d%a2%e6%b7%bb%e5%8a%a0%e6%8e%a8%e8%8d%90%e4%ba%ba%e9%aa%8c%e8%af%81%e5%8a%9f%e8%83%bd","status":"publish","type":"post","link":"https:\/\/fwq.ai\/blog\/59734\/","title":{"rendered":"ecshop\u6ce8\u518c\u9875\u9762\u6dfb\u52a0\u63a8\u8350\u4eba\u9a8c\u8bc1\u529f\u80fd"},"content":{"rendered":"<p> \u5b9e\u73b0ecshop\u6ce8\u518c\u9875\u6709\u63a8\u8350\u4eba\u529f\u80fd\uff0c\u4e3b\u8981\u4fee\u65394\u4e2a\u9875\u9762&nbsp;&nbsp;&nbsp;&nbsp; \u601d\u8def\uff0c\u5c31\u662f\u590d\u5236&nbsp; \u7528\u6237\u540dinput\u7684\u529f\u80fd\u7ed9\u63a8\u8350\u4eba\u5c31\u884c\u4e86&nbsp; \u4e0d\u7528\u6539\u5e95\u5c42<\/p>\n<p> &nbsp;&nbsp;&nbsp; 1.\u524d\u53f0\u6a21\u677f&nbsp;&nbsp; user_passport.dwt<\/p>\n<p> &nbsp;&nbsp;&nbsp; 2.js\uff08jquery\u5b9e\u73b0\u7684\uff09\u6587\u4ef6&nbsp;&nbsp;&nbsp;&nbsp; user.js<\/p>\n<p> &nbsp;&nbsp;&nbsp; 3.\u524d\u53f0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; user.php<\/p>\n<p> &nbsp;&nbsp;&nbsp; 4.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lib_passport.php<\/p>\n<p> &nbsp;<\/p>\n<p> 1\u9996\u5148\u5728\u7528\u6237\u6ce8\u518c\u6a21\u677f\u4e2d\u7684\u76f8\u5173\u4f4d\u7f6e\u6dfb\u52a0&nbsp;&nbsp;&nbsp; \u63a8\u8350\u4ebainput&nbsp; html\u5c5e\u6027<\/p>\n<p> <img decoding=\"async\" src=\"https:\/\/www.ldhost.cn\/helphmb\/uploads\/allimg\/160629\/094022HJ-0.png\" style=\"width: 408px;height: 475px\" class=\"aligncenter\" title=\"ecshop\u6ce8\u518c\u9875\u9762\u6dfb\u52a0\u63a8\u8350\u4eba\u9a8c\u8bc1\u529f\u80fd\u63d2\u56fe\" alt=\"ecshop\u6ce8\u518c\u9875\u9762\u6dfb\u52a0\u63a8\u8350\u4eba\u9a8c\u8bc1\u529f\u80fd\u63d2\u56fe\" \/><\/p>\n<p> &nbsp;&lt;!&#8211;\u90ae\u7bb1&#8211;&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;div class=&#8221;inputbg&#8221;&gt;&nbsp;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label class=&#8221;labelbox&#8221;&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input name=&#8221;email&#8221; type=&#8221;text&#8221; id=&#8221;email&#8221; onblur=&#8221;checkEmail(this.value);&#8221; onkeyup=&#8221;checkEmail(this.value);&#8221; placeholder=&#8221;{$lang.label_email}&#8221;&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;\/label&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;span class=&#8221;t_text&#8221;&gt;{$lang.label_email}&lt;\/span&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;span class=&#8221;error_icon&#8221;&gt;&lt;\/span&gt;&nbsp;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;\/div&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;div class=&#8221;err_tip&#8221; id=&#8221;email_notice&#8221;&gt;&lt;em&gt;&lt;\/em&gt; &lt;\/div&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!&#8211;\u63a8\u8350\u4eba&#8211;&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;div class=&#8221;inputbg&#8221;&gt;&nbsp;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label class=&#8221;labelbox&#8221;&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input name=&#8221;rec_user&#8221; type=&#8221;text&#8221; id=&#8221;rec_user&#8221; onblur=&#8221;is_rec_registered(this.value);&#8221; onkeyup=&#8221;is_rec_registered(this.value);&#8221;&nbsp; placeholder=&#8221; {$lang.label_rec_user}&#8221;&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;\/label&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;span class=&#8221;t_text&#8221;&gt; {$lang.label_rec_user}&lt;\/span&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;span class=&#8221;error_icon&#8221;&gt;&lt;\/span&gt;&nbsp;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;\/div&gt;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;div class=&#8221;err_tip&#8221; id=&#8221;rec_user_notice&#8221;&gt;&lt;em&gt;&lt;\/em&gt; &lt;\/div&gt;<\/p>\n<p> is_rec_registered(this.value) js\u51fd\u6570 &nbsp; \u5c31\u9700\u8981\u5728 &nbsp; user.js\u4e2d\u53bb\u4fee\u6539\u4e86<\/p>\n<p> &nbsp;<\/p>\n<p> 2.\u6253\u5f00&nbsp; user.js\u6587\u4ef6<\/p>\n<p> \u627e\u5230\u65b9\u6cd5&nbsp;&nbsp; function is_registered( username )\uff1b&nbsp; \u590d\u5236\u5e76\u5728\u5176\u4e0b\u9762\u7c98\u8d34\u4e00\u4efd&nbsp;&nbsp; \u4fee\u6539\u540d\u5b57\u4e3a&nbsp; function&nbsp;is_rec_registered( rec_user )\uff0c\u5355\u72ec\u9a8c\u8bc1\u63a8\u8350\u4eba\u662f\u5426\u662f\u5df2\u7ecf\u6ce8\u518c\u7684\u7528\u6237\u3001<\/p>\n<p> \u4ee3\u7801\u5982\u4e0b:<\/p>\n<p> \/\/\u63a8\u8350\u4eba\u4fee\u6539&nbsp; start<br \/> function is_rec_registered( rec_user )<br \/> {<br \/> &nbsp;&nbsp;&nbsp; var submit_disabled = false;<br \/> &nbsp;&nbsp; &nbsp;var unlen = rec_user.replace(\/[^\\x00-\\xff]\/g, &#8220;**&#8221;).length;<\/p>\n<p> &nbsp;&nbsp;&nbsp; if ( rec_user == &#8221; )<br \/> &nbsp;&nbsp;&nbsp; {<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; document.getElementById(&#8216;rec_user_notice&#8217;).innerHTML = &#8216;\u63a8\u8350\u4eba\u4e0d\u5141\u8bb8\u4e3a\u7a7a!&#8217;;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var submit_disabled = true;<br \/> &nbsp;&nbsp;&nbsp; }<\/p>\n<p> &nbsp;&nbsp;&nbsp; if ( !chkstr( rec_user ) )<br \/> &nbsp;&nbsp;&nbsp; {<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; document.getElementById(&#8216;rec_user_notice&#8217;).innerHTML = &#8216;\u63a8\u8350\u4eba\u5305\u542b\u975e\u6cd5\u5b57\u7b26&#8217;;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var submit_disabled = true;<br \/> &nbsp;&nbsp;&nbsp; }<br \/> &nbsp;&nbsp;&nbsp; if ( unlen &lt; 3 )<br \/> &nbsp;&nbsp;&nbsp; {&nbsp;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; document.getElementById(&#8216;rec_user_notice&#8217;).innerHTML = &#8216;\u63a8\u8350\u4eba\u957f\u5ea6\u4e0d\u80fd\u5c11\u4e8e 3 \u4e2a\u5b57\u7b26\u3002&#8217;;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var submit_disabled = true;<br \/> &nbsp;&nbsp;&nbsp; }<br \/> &nbsp;&nbsp;&nbsp; if ( unlen &gt; 14 )<br \/> &nbsp;&nbsp;&nbsp; {<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; document.getElementById(&#8216;rec_user_notice&#8217;).innerHTML = &#8216;\u63a8\u8350\u4eba\u957f\u5ea6\u591a\u591a\u5c11\u4e8e 14 \u4e2a\u5b57\u7b26\u3002&#8217;;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var submit_disabled = true;<br \/> &nbsp;&nbsp;&nbsp; }<br \/> &nbsp;&nbsp;&nbsp; if ( submit_disabled )<br \/> &nbsp;&nbsp;&nbsp; {<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; document.forms[&#8216;formUser&#8217;].elements[&#8216;Submit&#8217;].disabled = &#8216;disabled&#8217;;<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return false;<br \/> &nbsp;&nbsp;&nbsp; }<br \/> &nbsp;&nbsp;&nbsp; Ajax.call( &#8216;user.php?act=is_rec_registered&#8217;, &#8216;rec_user=&#8217; + rec_user, rec_registed_callback , &#8216;GET&#8217;, &#8216;TEXT&#8217;, true, true );<br \/> }<\/p>\n<p> \u6ce8\u518c&nbsp; ajax.call \u8c03\u7528\u7684\u51fd\u6570&nbsp;&nbsp;rec_registed_callback() &nbsp; \u6539\u51fd\u6570\u5b9e\u73b0\u6839\u636e\u8fd4\u56de\u7684 result\u7684\u771f\u5047\u72b6\u6001\uff0c\u5728\u9875\u9762\u63d0\u793a\u4fe1\u606f(\u63a8\u8350\u4eba\u4e0d\u5b58\u5728&#8230;)&nbsp;<\/p>\n<p> function rec_registed_callback(result)<br \/> {<br \/> &nbsp; if ( result == &#8220;true&#8221; )<br \/> &nbsp; {<\/p>\n<p> &nbsp;&nbsp; &nbsp;$(&#8220;#rec_user&#8221;).parent().removeClass(&#8220;params_error&#8221;);<br \/> &nbsp;&nbsp; &nbsp;$(&#8220;#rec_user&#8221;).parent().addClass(&#8220;params_success&#8221;);<\/p>\n<p> &nbsp;&nbsp;&nbsp; document.getElementById(&#8216;rec_user_notice&#8217;).innerHTML = &#8220;&lt;em&gt;&lt;\/em&gt;&#8221;; \/\/zhouhuan<br \/> &nbsp;&nbsp;&nbsp; document.forms[&#8216;formUser&#8217;].elements[&#8216;Submit&#8217;].disabled = &#8221;;<br \/> &nbsp; }<br \/> &nbsp; else<br \/> &nbsp; {<\/p>\n<p> &nbsp;&nbsp; &nbsp;$(&#8220;#rec_user&#8221;).parent().removeClass(&#8220;params_success&#8221;);<br \/> &nbsp;&nbsp; &nbsp;$(&#8220;#rec_user&#8221;).parent().addClass(&#8220;params_error&#8221;);<br \/> &nbsp;&nbsp;&nbsp; document.getElementById(&#8216;rec_user_notice&#8217;).innerHTML = &#8216;\u63a8\u8350\u4eba\u4e0d\u5b58\u5728,\u8bf7\u91cd\u65b0\u8f93\u5165&#8217;;<br \/> &nbsp;&nbsp;&nbsp; document.forms[&#8216;formUser&#8217;].elements[&#8216;Submit&#8217;].disabled = &#8216;disabled&#8217;;<br \/> &nbsp; }<br \/> }<\/p>\n<p> \/\/\u63a8\u8350\u4eba\u4fee\u6539&nbsp;&nbsp; end<\/p>\n<p> &nbsp;<\/p>\n<p> &nbsp;<\/p>\n<p> 3. \u4fee\u6539user.php\u6587\u4ef6&nbsp;&nbsp; \u91cd\u8981\uff01\uff01\uff01\uff01<\/p>\n<p> \u9996\u5148\u627e\u5230&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $not_login_arr =array(&#8216;login&#8217;,&#8217;act_login&#8217;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \u5728\u8fd9\u4e2a\u6570\u7ec4\u91cc\u9762\u8bb2&nbsp;&nbsp; act\u7684&nbsp; is_rec_registered\u52a0\u8fdb\u53bb<\/p>\n<p> $not_login_arr =<br \/> array(&#8216;login&#8217;,&#8217;act_login&#8217;,&#8217;register&#8217;,&#8217;act_register&#8217;,&#8217;act_edit_password&#8217;,&#8217;get_password&#8217;,&#8217;send_pwd_email&#8217;,&#8217;password&#8217;, &#8216;signin&#8217;, &#8216;add_tag&#8217;, &#8216;collect&#8217;, &#8216;return_to_cart&#8217;, &#8216;logout&#8217;, &#8217;email_list&#8217;, &#8216;validate_email&#8217;, &#8216;send_hash_mail&#8217;, &#8216;order_query&#8217;, &#8216;is_registered&#8217;,<br \/> &#8216;is_rec_registered&#8217;, &#8216;check_email&#8217;,&#8217;clear_history&#8217;,&#8217;qpassword_name&#8217;, &#8216;get_passwd_question&#8217;, &#8216;check_answer&#8217;,&#8217;oath&#8217; , &#8216;oath_login&#8217;, &#8216;other_login&#8217;);<\/p>\n<p> \u518d\u6dfb\u52a0\u4e0b\u9762\u4ee3\u7801\uff0c&nbsp; \u5f53act == is_rec_registered\u7684\u65f6\u5019 \u6267\u884c\u4e0b\u9762\u64cd\u4f5c\uff08\u68c0\u67e5\u63a8\u8350\u4eba\u662f\u5426\u6ce8\u518c\uff09<\/p>\n<p> \/* \u9a8c\u8bc1\u63a8\u8350\u4eba\u662f\u5426\u6ce8\u518c *\/<br \/> elseif ($action == &#8216;is_rec_registered&#8217;)<br \/> {<\/p>\n<p> &nbsp;&nbsp; &nbsp;include_once(ROOT_PATH . &#8216;includes\/lib_passport.php&#8217;);<\/p>\n<p> &nbsp;&nbsp; &nbsp;$rec_user = trim($_GET[&#8216;rec_user&#8217;]);<br \/> &nbsp;&nbsp; &nbsp;$rec_user = json_str_iconv($rec_user);<\/p>\n<p> &nbsp;&nbsp; &nbsp;if ($user-&gt;check_user($rec_user) || admin_registered($rec_user))<br \/> &nbsp;&nbsp; &nbsp;{<br \/> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo &#8216;true&#8217;;<br \/> &nbsp;&nbsp; &nbsp;}<br \/> &nbsp;&nbsp; &nbsp;else<br \/> &nbsp;&nbsp; &nbsp;{<br \/> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo &#8216;false&#8217;;<br \/> &nbsp;&nbsp; &nbsp;}<br \/> }<\/p>\n<p> &nbsp;<\/p>\n<p> \u6700\u540e\u5728&nbsp; lib_passport.php\u6587\u4ef6\u4e2d<\/p>\n<p> \u67e5\u627e\u5230&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$up_uid = get_affiliate();<\/p>\n<p> \u8bb2\u4e0b\u9762\u7684if\u8bed\u53e5\u66ff\u6362\u6210&nbsp;&nbsp; (\u539f\u6765\u7684\u662f\u6839\u636eID\u67e5\u627e\uff0c\u73b0\u5728\u6839\u636erec_user)<br \/> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if (!empty($rec_user))<br \/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;{<br \/> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; $recsql = &#8220;SELECT user_id FROM &#8221; . $GLOBALS[&#8216;ecs&#8217;]-&gt;table(&#8216;users&#8217;) . &#8221; WHERE user_name = &#8216;$rec_user'&#8221;;<br \/> &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; $recone = $GLOBALS[&#8216;db&#8217;]-&gt;getOne($recsql);<br \/> &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; if ($recone)<br \/> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br \/> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $up_uid=$recone;<br \/> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; }<br \/> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<\/p>\n<p> &nbsp;<\/p>\n<p> \u5927\u4f53\u6d41\u7a0b\u601d\u8def\u5c31\u8fd9\u6837\uff0c&nbsp;&nbsp; \u5177\u4f53\u8981\u4f60\u81ea\u5df1\u5b9e\u9645\u4e2d\u53bb\u4fee\u6539\u7ec6\u8282\uff0c\u5e0c\u671b\u53ef\u4ee5\u5e2e\u52a9\u5230\u4f60 &nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5b9e\u73b0ecshop\u6ce8\u518c\u9875\u6709\u63a8\u8350\u4eba\u529f\u80fd\uff0c\u4e3b\u8981\u4fee\u65394\u4e2a\u9875\u9762&nbsp;&nbsp;&nbsp;&nbsp; \u601d\u8def\uff0c\u5c31\u662f\u590d\u5236&nbsp; \u7528\u6237\u540dinput\u7684\u529f\u80fd\u7ed9\u63a8\u8350\u4eba\u5c31\u884c\u4e86&nbsp; \u4e0d\u7528\u6539\u5e95\u5c42 &nbsp;&nbsp;&nbsp; 1.\u524d\u53f0\u6a21\u677f&nbsp;&nbsp; user_passport.dwt &nbsp;&nbsp;&nbsp; 2.js\uff08jquery\u5b9e\u73b0\u7684\uff09\u6587\u4ef6&nbsp;&nbsp;&nbsp;&nbsp; user.js &nbsp;&nbsp;&nbsp; 3.\u524d\u53f0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; user.php &nbsp;&nbsp;&nbsp; 4.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lib_passport.php &nbsp; 1\u9996\u5148\u5728\u7528\u6237\u6ce8\u518c\u6a21\u677f\u4e2d\u7684\u76f8\u5173\u4f4d\u7f6e\u6dfb\u52a0&nbsp;&nbsp;&nbsp; \u63a8\u8350\u4ebainput&nbsp; html\u5c5e\u6027 &nbsp;&lt;!&#8211;\u90ae\u7bb1&#8211;&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;div class=&#8221;inputbg&#8221;&gt;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label class=&#8221;labelbox&#8221;&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input name=&#8221;email&#8221; type=&#8221;text&#8221; id=&#8221;email&#8221; onblur=&#8221;checkEmail(this.value);&#8221; onkeyup=&#8221;checkEmail(this.value);&#8221; placeholder=&#8221;{$lang.label_email}&#8221;&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;\/label&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;span class=&#8221;t_text&#8221;&gt;{$lang.label_email}&lt;\/span&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;span class=&#8221;error_icon&#8221;&gt;&lt;\/span&gt;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;\/div&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;div class=&#8221;err_tip&#8221; id=&#8221;email_notice&#8221;&gt;&lt;em&gt;&lt;\/em&gt; &lt;\/div&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!&#8211;\u63a8\u8350\u4eba&#8211;&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;div [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16],"tags":[],"class_list":["post-59734","post","type-post","status-publish","format-standard","hentry","category-16"],"_links":{"self":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/59734","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/comments?post=59734"}],"version-history":[{"count":0,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/59734\/revisions"}],"wp:attachment":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/media?parent=59734"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/categories?post=59734"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/tags?post=59734"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}