我在一個小的drupal 6站點中使用通知模塊,並希望能夠根據用戶的電子郵件地址字段的值向用戶發送短信或電子郵件。如何評估用戶在Drupal站點的電子郵件地址?
我可以訪問一個網關,所以我所要做的就是在手機號碼的末尾添加一個「@」和網關地址。
所以,我想告訴顧客輸入他們的手機號碼或地址,但有一個腳本來評估該字段中的內容。基本上,如果已經有一個「@」(意思是他們輸入了他們的電子郵件地址),則該值不會被改變。但是如果沒有「@」並且該值是10位數字(電話號碼),則自動添加「@gatewayaddress」。
我可以通過preg_match找出PHP來做到這一點,但是如何在創建帳戶時獲取字段的值?
我發現定製用戶註冊信息,但我想我應該寫一個簡單的模塊來做到這一點,以確保這是更容易維護的道路。
我沒有使用drupal的sms框架和網關模塊,因爲文本消息沒有被髮送,而嘗試模塊的開發版本仍然不起作用,並且破壞了我的網站。此外,我正在使用的這個網關免費提供給我的僱主,最重要的是,它只是起作用。
有人可以幫我解決這個問題嗎?
@nmc謝謝。我是模塊開發的新手,但我真的需要這個功能。
以下是我的模塊的功能,它不工作。我如何走上正確的道路?
function emailsmsfield_user($op,&$edit,&$account,$category = NULL) {
//if creating an account or updating
if($op == 'insert' || $op == 'after_update') {
/*checking for '@' symbol. If it is missing, the value gets the gateway address
added to the end*/
if(preg_match('[^@]',$user->mail[0]['value'])) {
$user->mail[0]['value'] = $user->mail[0]['value'] . 'gateway.address.com';
}
}
}
你使用的是什麼版本的drupal? – nmc
我正在使用drupal 6 – Matt