2 `+ d$ l X1 q/ S" f' }! H* K0 e* z) ~# s
使用Emlog博客的朋友应该都知道Emlog评论人邮件不是必填的,下面说下修把Emlog评论人邮件改为必填的方法,本方法思路来源于EM论坛,经舍力测试(测试版本5.3.1)修改后可以正常使用
P5 Q/ ^% y/ r# K* X6 l9 U2 ~找到根目录下include/controller/comment_controller.php这个文件中的- elseif ($mail != '' && !checkMail($mail)) {$ D) u" z' C+ Q! P7 {; O3 t
- emMsg('评论失败:邮件地址不符合规范');
复制代码 替换成- elseif (empty($mail) || !checkMail($mail)){( F1 m* U+ D1 U
- emMsg('提交失败:邮件地址不规范,请输入正确的E-mail地址', 'javascript:history.back(-1);');
复制代码 这个就可以实现Emlog评论人邮件必填,需要的朋友动手试试吧,如有疑问,可在下面留言。, D& z* m; {9 p# u4 B4 b( w5 K" D
网址必填的方法也一样,只需要把- elseif (!empty($url) && preg_match("/^(http|https)://[^<>'"]*$/", $url) == false) {0 }9 V3 c0 j( l9 ^& F8 q7 x7 _, E
- emMsg('评论失败:主页地址不符合规范','javascript:history.back(-1);');
复制代码 用下面代码替换即可- elseif (empty($url) || preg_match("/^http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~`@[]’:+!]*([^<>"])*$/", $url) == false) {
' C. E: |1 h. j' O: a, {3 {9 ` - emMsg('评论失败:网址不符合规范,请使用正确的网址','javascript:history.back(-1);');
复制代码
. f2 R. I$ e ]. O. u h$ d! }0 \以上方法需要修改emlog内核,下面舍力讲下不修改的内核实现的方法(其实就是js判断实现,需要在module.php文件评论表单的form中加入name="sheli"):代码如下
7 p" E9 m* v& I- <script language=JavaScript>
$ ?( s) P9 a, G& ?5 }9 {; ^ - function CheckForm(){
/ N1 ?8 c* W8 M! e# }+ C - if(document.sheli.comname.value.length == 0) {
2 e' O v' A; S* x* G/ r7 ~6 @ - alert("请输入昵称");$ t; ], J' O( l0 G
- document.sheli.comname.focus();
, K* s1 Z; N1 o! g* r& w$ S1 T8 W - return false;
" P2 n( E5 n" [% F - }
5 `. I/ ~) \2 k7 m$ u - if(document.sheli.commail.value.length == 0) {
3 ]4 D$ G2 G* }- ^ - alert("请输入邮箱地址");# }( [. G8 E3 Y# m5 [5 G7 f
- document.sheli.commail.focus();& k- d" ?8 E% o3 V/ U( d) x
- return false;: D1 D3 y8 J% t+ z) a* f4 A
- }
& y1 ~5 s4 B; s+ t - var reg = /^([a-zA-Z0-9]+[_|_|.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|_|.]?)*[a-zA-Z0-9]+.[a-zA-Z]{2,3}$/;
) E8 U' h0 p3 z; T& X - if(!reg.test(document.sheli.commail.value))8 n9 n' y5 ?( f
- {
- s0 k4 W* P# i3 N6 { - alert("邮箱地址错误,请输入正确的邮箱地址");
% t, b$ g2 l! v) ` - document.sheli.commail.focus();! e/ V6 _7 c' |0 r
- return false;
, ^ x7 J' S1 }+ u& u% g - }. _5 @6 u; \5 N, T
/ O o% w' \; V3 V5 `7 v, M- var reg = /^http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~`@[]’:+!]*([^<>"])*$/;
! S; ?- B2 @& N. C3 p: A [! o/ ` - if(!reg.test(document.sheli.comurl.value) && (document.sheli.comurl.value))
% o, P; c' a6 n5 A - {
- c" u* N/ g( ^ p' D - alert("请输入正确的网站地址,加http://或不填写");
& T9 H0 U+ h5 V5 T' d$ P - document.sheli.comurl.focus();/ W0 Y2 Y! P" Q
- return false;
, h' Y/ e0 v' }% G J$ _ - }3 z; |' g$ a# ?. F! A+ X
-
8 \% \' C& o$ q2 u" v - if(document.sheli.comment.value.length == 0) {! T- k4 _# f( Y3 ?2 B9 C
- alert("请填写评论内容且评论内容需包含中文");
$ c) R; Q" t# D - document.sheli.comment.focus();
L+ Y; `. X: v1 [5 v0 z: } - return false;5 l+ ~: n Y, d3 y4 l
- }0 V8 H: g% ^7 q- ~4 b/ K- U% D" M
- } ! W" ~" L$ R* m6 X
- </script>
复制代码 把上面代码放入有留言本的页面最下方即可
% M, `* [3 ]* P4 q |