您在這裡

Sigh-up模組欄位儲存與會員資料對應修改問題

sanhuang's 的頭像
sanhuang 在 2010-01-14 (四) 01:02 發表

請教版上前輩

我想增加Sigh-up模組的欄位,網路上看到可以從signup/theme/signup_form.inc內增加


function theme_signup_user_form($node) {
global $user;
$form = array();

// If this function is providing any extra fields at all, the following
// line is required for form form to work -- DO NOT EDIT OR REMOVE.
$form['signup_form_data']['#tree'] = TRUE;

$form['signup_form_data']['Name'] = array(
'#type' => 'textfield',
'#title' => t('Name'),
'#size' => 40, '#maxlength' => 64,
'#required' => TRUE,
);
$form['signup_form_data']['Phone'] = array(
'#type' => 'textfield',
'#title' => t('Phone'),
'#size' => 40, '#maxlength' => 64,
);

// If the user is logged in, fill in their name by default.
if ($user->uid) {
$form['signup_form_data']['Name']['#default_value'] = $user->name;
}

return $form;
}

不過我想了解我增加的欄位值會被儲存在資料庫嗎?因為找了signup模組其他檔案似乎都沒有發現Phone欄位儲存內容,推測是不是後續所增加的欄位都全部組成一個內容去儲存?

另外,drupal預設會員註冊時只有帳號跟密碼,若我也想類似這樣的作法增加欄位,該如何做呢?

感謝回覆~

後來我發現確實他把增加的欄位都會寫入一個db field一次顯示...

目前倒是想嘗試 用profile模組增加的自訂欄位能否直接對應到signup模組內自訂欄位上

感覺參考

if ($user->uid) {
$form['signup_form_data']['Name']['#default_value'] = $user->name;
}

做類似判斷應該不難~~

<> 個體網際資訊工坊

if ($user->uid) {
$form['signup_form_data']['Name']['#default_value'] = $user->name;
}

請問 有試這帶入 profile 模組 內 自訂欄位的 值 到 signup user form 內的自訂欄位嗎..

我試著帶入 但 出現的 值 都為 0 ....
if ($user->uid) {
$form['signup_form_data']['Name']['#default_value'] = $user->name;
$form['signup_form_data']['UnitName']['#default_value'] = $user->profile-profile_unit;

profile-profile_unit 帶入到 UnitName 的值 都只是 0 ...
不知如何解決...