9 p0 o( l. U& \* @
使用Emlog博客的朋友应该都知道Emlog评论人邮件不是必填的,下面说下修把Emlog评论人邮件改为必填的方法,本方法思路来源于EM论坛,经舍力测试(测试版本5.3.1)修改后可以正常使用4 q u- p9 j& ?0 `1 v- e+ h
找到根目录下include/controller/comment_controller.php这个文件中的- elseif ($mail != '' && !checkMail($mail)) {
6 E% L! e6 Z# E' _ - emMsg('评论失败:邮件地址不符合规范');
复制代码 替换成- elseif (empty($mail) || !checkMail($mail)){5 t3 i8 y- g- k
- emMsg('提交失败:邮件地址不规范,请输入正确的E-mail地址', 'javascript:history.back(-1);');
复制代码 这个就可以实现Emlog评论人邮件必填,需要的朋友动手试试吧,如有疑问,可在下面留言。 Z/ N. _6 Z5 Z m, B
网址必填的方法也一样,只需要把- elseif (!empty($url) && preg_match("/^(http|https)://[^<>'"]*$/", $url) == false) {
3 h @- r: m- w+ h5 `! H r - emMsg('评论失败:主页地址不符合规范','javascript:history.back(-1);');
复制代码 用下面代码替换即可- elseif (empty($url) || preg_match("/^http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~`@[]’:+!]*([^<>"])*$/", $url) == false) {
7 t6 q; `3 {( {+ f, U4 t6 X8 d - emMsg('评论失败:网址不符合规范,请使用正确的网址','javascript:history.back(-1);');
复制代码
) e+ X4 e8 a: `4 G; v ^. Y以上方法需要修改emlog内核,下面舍力讲下不修改的内核实现的方法(其实就是js判断实现,需要在module.php文件评论表单的form中加入name="sheli"):代码如下
4 M- ?4 |3 i" z+ r# R7 ^- <script language=JavaScript># z8 S0 K+ v2 t
- function CheckForm(){
O" G- i$ U4 k; K0 Y9 ` - if(document.sheli.comname.value.length == 0) {5 W$ X, N3 a% ^/ f0 U! d( a# W0 K
- alert("请输入昵称");* J, k" `- Y2 ~% }3 j& U, X
- document.sheli.comname.focus();
% |. Z5 B$ y' ], \' o* r" W( g0 V - return false;
* f! y0 S+ j3 K, i) P - }# ^6 a- @; D, p. {
- if(document.sheli.commail.value.length == 0) {$ \9 e6 `! N/ M. q. Q1 b
- alert("请输入邮箱地址");+ P, O) q; s7 n2 ]' e/ o# S
- document.sheli.commail.focus();
J! r) }; t8 g, L% X2 A2 M - return false;
+ {( g% Q+ |. X) A, { - }' |- G9 |1 G! {9 s3 X5 d
- var reg = /^([a-zA-Z0-9]+[_|_|.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|_|.]?)*[a-zA-Z0-9]+.[a-zA-Z]{2,3}$/;
* t9 v7 D8 _3 x. S - if(!reg.test(document.sheli.commail.value))" O; ?8 ]9 x4 s0 y
- {
+ o" c% r/ j5 E% t% |+ {+ q - alert("邮箱地址错误,请输入正确的邮箱地址");8 [1 U# C$ _) w0 _2 X* V' T6 _- p
- document.sheli.commail.focus();
& S9 r% ]" c; ^( ]( T - return false;' d9 r+ q; G a0 ^& b* N0 t. P
- }
* k3 M7 l0 E! T6 K& ?3 v - / O1 Y" G9 Q6 A# j
- var reg = /^http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~`@[]’:+!]*([^<>"])*$/;# P- V# a6 y0 k* J6 O* X$ w. w
- if(!reg.test(document.sheli.comurl.value) && (document.sheli.comurl.value))1 n( {, r: w8 _, t) a9 V; W1 M
- {; f3 W8 Y0 n b# m0 X
- alert("请输入正确的网站地址,加http://或不填写");! K- x6 m7 K0 R3 B) }
- document.sheli.comurl.focus();
0 x- U F2 |4 b2 O6 U! _1 ]$ U - return false;, q; l; F& M L! H% k# n3 G0 M
- }2 W9 i) N( ~! M' f- t
- 8 R6 x: i. X2 l/ K) s9 e5 |- q( r
- if(document.sheli.comment.value.length == 0) {, u9 w' _' m0 E2 \
- alert("请填写评论内容且评论内容需包含中文");4 o* z% o$ }6 P: Q5 i i2 y
- document.sheli.comment.focus();* h9 b& o7 z& n# M( n0 S& j
- return false;) g. M2 }8 H) {( ~ w
- }; X9 d# d, h" T G
- }
0 I& ~ i H$ Q - </script>
复制代码 把上面代码放入有留言本的页面最下方即可
- i, P, j# v4 b* e, A |