DedeCMS会员中心用户头像未设置输出php判断
DedeCMS会员系统开发中遇到需要在公共头部(会员中心的头部/member/templates/head.htm)调用会员头像,在需要的地方用下面代码调用:
<img src="<?php echo $cfg_ml->fields['face']; ?>" width="26" height="26" alt="<?php echo $cfg_ml->M_UserName?>"/>
用户设置了头像,所有会员中心的页面能都调用出来;未设置头像只能在会员中心的主页调用成功。自己写了一个php判断语句,同样的也适合未设置用户名的情况。由于会员注册的时候,男、女并不是必填项,又或者保密,下面橙色的部分是新增加的图片,不调用默认的男生或者女生头像。
<?php
if(empty($cfg_ml->M_UserName)){
echo "(未设置昵称)";
}
else{
echo "{$cfg_ml->M_UserName}";
}
?>
<?php
if(empty($cfg_ml->fields['face'])){
echo "<img src='templets/images/dfnone.png' width='26' height='26' alt='未设置头像'/>";
}
else{
echo "<img src='{$cfg_ml->fields['face']}' width='26' height='26' alt='{$cfg_ml->M_UserName}'/>";
}
?>
如果希望性别为女的时候输出的是默认的女头像,这里用到嵌套php判断,写法如下
<?php if(empty($cfg_ml->fields['face'])){ if($cfg_ml->fields['sex']=='女'){ echo "<img src='templets/images/dfgirl.png' width='26' height='26' alt='女头像'/>"; } else{ echo "<img src='templets/images/dfboy.png' width='26' height='26' alt='男头像'/>"; } } else{ echo "<img src='{$cfg_ml->fields['face']}' width='26' height='26' alt='{$cfg_ml->M_UserName}'/>"; } ?>
默认的用户必须填写昵称,根据实际情况可以设置为非必填项。找到/member/templets/js/reg_new.js,把下面对应的代码注释即可。
if($('#uname').val()=="") { $('#uname').focus(); alert("用户昵称不能为空!"); return false; }