1 頁 (共 1 頁)

[教學]鎖定性別(不能再修改性別)

發表於 : 2004-10-08 19:06
Wonson
小弟看了一本php書後研究出這種寫法....
使用戶只能在註冊決定自己的性別,免得有些變態不斷變性玩虛擬形象....真嘔心.....

代碼: 選擇全部

## 安裝難度:菜鳥\r
## 安裝時間:30秒
## Files To Edit:      2
# 
#-----[ OPEN 開啟 ]------------------------------------------------ 
#  
include/usercp_register
# 
#-----[ FIND 尋找 ]------------------------------------------------ 
# 
	$strip_var_list = array('username' => 'username', 'email' => 'email', 'icq' => 'icq', 'aim' => 'aim', 'msn' => 'msn', 'yim' => 'yim', 'website' => 'website', 'location' => 'location', 'occupation' => 'occupation', 'interests' => 'interests'
# 
#-----[ IN-LINE FIND 在行中尋找 ]---------------------------------------- 
# 
'interests' => 'interests',
# 
#-----[ IN-LINE AFTER, ADD 在行中找到後在後面加入 ]---------------------------------- 
# 
,'gender' => 'gender'
# 
#-----[ OPEN 開啟 ]------------------------------------------------ 
#  
templates/(Your TPL)/profile_add_body.tpl 
# 
#-----[ FIND 尋找 ]------------------------------------------------ 
# 
<!-- Start add - Gender MOD --> 
<tr> 
      <td class="row1"><span class="gen">{L_GENDER}:</span></td> 
      <td class="row2"> 
      <input type="radio" {LOCK_GENDER} name="gender" value="0" {GENDER_NO_SPECIFY_CHECKED}/> 
      <span class="gen">{L_GENDER_NOT_SPECIFY}</span>   
      <input type="radio" name="gender" value="1" {GENDER_MALE_CHECKED}/> 
      <span class="gen">{L_GENDER_MALE}</span>   
      <input type="radio" name="gender" value="2" {GENDER_FEMALE_CHECKED}/> 
      <span class="gen">{L_GENDER_FEMALE}</span></td> 
</tr> 
<!-- End add - Gender MOD --> 
# 
#-----[ REPLACE WITH 取代為 ]------------------------------------------ 
# 
	<!-- BEGIN switch_user_logged_out -->
	<!-- Start add - Gender MOD --> 
	<tr> 
	      <td class="row1"><span class="gen">{L_GENDER}: *(不能再修改)</span></td> 
	      <td class="row2">
	      <input type="radio" name="gender" value="1" {GENDER_MALE_CHECKED}/> 
	      <span class="gen">{L_GENDER_MALE}</span>   
	      <input type="radio" name="gender" value="2" {GENDER_FEMALE_CHECKED}/> 
	      <span class="gen">{L_GENDER_FEMALE}</span></td> 
	</tr> 
	<!-- End add - Gender MOD --> 
	<!-- END switch_user_logged_out -->
	
	<!-- BEGIN switch_user_logged_in -->
	<!-- Start add - Gender MOD --> 
	
	      <input type="hidden" name="gender" value={GENDER}> 
	
	<!-- End add - Gender MOD --> 
	<!-- END switch_user_logged_in -->
# 
#-----[ SAVE/CLOSE ALL FILES 存檔並關閉檔案 ]-------------------------------- 
# 
# EoM 
有人幫助自然好, 自己努力更加好.....

發表於 : 2006-11-16 09:58
mib456
這樣改的話本來沒選性別的舊不能在個人資料中更改了!!
有沒有辦法可以就是還沒選性別的人可以在個人資料中更改之後就不能選性別了!!

發表於 : 2006-11-16 18:26
心靈捕手
mib456 寫:這樣改的話本來沒選性別的舊不能在個人資料中更改了!!
有沒有辦法可以就是還沒選性別的人可以在個人資料中更改之後就不能選性別了!!
這個性別外掛, 原先已經有鎖定 ('LOCK_GENDER') 的設計;
只要針對個人需求, 稍加修改即可.

以下的修改, 提供您參考:
#
#-----[ Open ]-----
#
templates/YOUR_THEME/profile_add_body.tpl

#
#-----[ Find ]-----
#

代碼: 選擇全部

<!-- Start add - Gender MOD -->
<tr> 
      <td class="row1"><span class="gen">{L_GENDER}:</span></td> 
      <td class="row2"> 
      <input type="radio" {LOCK_GENDER} name="gender" value="0" {GENDER_NO_SPECIFY_CHECKED}/> 
      <span class="gen">{L_GENDER_NOT_SPECIFY}</span>&nbsp;&nbsp; 
      <input type="radio" name="gender" value="1" {GENDER_MALE_CHECKED}/> 
      <span class="gen">{L_GENDER_MALE}</span>&nbsp;&nbsp; 
      <input type="radio" name="gender" value="2" {GENDER_FEMALE_CHECKED}/> 
      <span class="gen">{L_GENDER_FEMALE}</span></td> 
</tr>
<!-- End add - Gender MOD -->
#
#-----[ Replace With ]-----
#

代碼: 選擇全部

<!-- Start add - Gender MOD -->
<tr> 
      <td class="row1"><span class="gen">{L_GENDER}:</span><br />
      <span class="gensmall">公開性別後, 無法再更改.</span></td> 
      <td class="row2"> 
      <input type="radio" {LOCK_GENDER} name="gender" value="0" {GENDER_NO_SPECIFY_CHECKED}/> 
      <span class="gen">{L_GENDER_NOT_SPECIFY}</span>&nbsp;&nbsp; 
      <input type="radio" {LOCK_GENDER} name="gender" value="1" {GENDER_MALE_CHECKED}/> 
      <span class="gen">{L_GENDER_MALE}</span>&nbsp;&nbsp; 
      <input type="radio" {LOCK_GENDER} name="gender" value="2" {GENDER_FEMALE_CHECKED}/> 
      <span class="gen">{L_GENDER_FEMALE}</span></td> 
</tr>
<!-- End add - Gender MOD -->
#
#-----[ OPEN ]-----
#
includes/usercp_register.php

#
#-----[ FIND ]-----
#

代碼: 選擇全部

'LOCK_GENDER' =>($mode!='register') ? 'DISABLED':'',
#
#-----[ REPLACE WITH ]-----
#

代碼: 選擇全部

'LOCK_GENDER' =>($userdata['user_gender'] != 0) ? 'DISABLED':'',
#
#-----[ SAVE & CLOSE ]-----
#

發表於 : 2006-11-17 11:14
mib456
:lol: 感謝心靈大大的指教讓我又學到好東西!!!
完全符合我要的方式!!感謝!!