主題: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: wolfram 於 十月 14, 2005, 02:52:27 下午 各位大大
我是用 Win2000 server + apache2.0 + mysql + php4.x plog 1.0.2 beta 都設定的差不多之後,要另外新增使用者 卻一直說我的 電子郵件格式錯誤 我是輸入很正規的格式啊...例如: alex@mall.com.tw 主題: Re: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: lss 於 十月 16, 2005, 12:30:46 下午 請看看你是否開啟了下面這項設定?
全域設定 -> 電子郵件設定 -> check_email_address_validity 如果有,請將它設為「否」,應該就可以了。這裡可能有 bug ,我查一下看看,再回報到 bugs.lifetype.net 。 主題: Re: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: markwu 於 十月 17, 2005, 11:14:32 上午 請看看你是否開啟了下面這項設定? 全域設定 -> 電子郵件設定 -> check_email_address_validity 如果有,請將它設為「否」,應該就可以了。這裡可能有 bug ,我查一下看看,再回報到 bugs.lifetype.net 。 可是我看了半天,看不出那一段 regexp 有什麼問題耶!真是傷腦筋。這要麻煩你看了。 Mark 主題: Re: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: lss 於 十月 17, 2005, 01:55:36 下午 Mark:
問題不是出在那個正規表示式(class/data/validator/rules/emailformatrule.class.php),而是出在另一個檔案: 引用 檔案:class/data/validator/emailvalidator.class.php 由檔案邏輯看來,email 格式檢查是一定會做的,而 check_email_address_validity 的設定則是「是否檢查使用 EmailDnsRule 檢查 email 」。function EmailValidator() { $this->Validator(); $this->addRule(new EmailFormatRule()); $config =& Config::getConfig(); if ( $config->getValue( "check_email_address_validity" )) { $this->addRule(new EmailDnsRule()); } } 看來語系檔的翻譯要修改一下。 至於 EmailDnsRule 裡面是用 socket 方式連接 smtp server 做email的檢查。這邊我就不熟了 :-$ 。看看有誰能處理。 主題: Re: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: markwu 於 十月 17, 2005, 04:10:37 下午 阿!我還以為是 regexp 那一段錯了!真是丟臉啊 :-$
Mark 主題: Re: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: lss 於 十月 17, 2005, 05:38:49 下午 阿!我還以為是 regexp 那一段錯了!真是丟臉啊 :-$ 那一段我也是反覆看了好幾遍,後來往回追才發現是翻譯的問題 :-PMark 主題: Re: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: wolfram 於 十月 18, 2005, 08:57:25 下午 :-D 謝謝兩位,果然是拿掉 check_email_address_validity 選項就正常了!
只是我看了 http://lifetype.org.tw/api/d6/dbb/emaildnsrule_8class_8php-source.html#l00027 發現裡面程式判斷都沒錯 (我的 SMTP 觀念應該很正確..呵呵呵) 所以...是不是有 EmailDnsRule 以外的相關 function 可以檢查看看... 主題: Re: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: markwu 於 十月 19, 2005, 10:04:57 上午 :-D 謝謝兩位,果然是拿掉 check_email_address_validity 選項就正常了! 只是我看了 http://lifetype.org.tw/api/d6/dbb/emaildnsrule_8class_8php-source.html#l00027 發現裡面程式判斷都沒錯 (我的 SMTP 觀念應該很正確..呵呵呵) 所以...是不是有 EmailDnsRule 以外的相關 function 可以檢查看看... 的確是都沒錯,可能要放一些 debug message 進去檢查看看了! Mark 主題: Re: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: wolfram 於 十月 19, 2005, 01:45:34 下午 馬克杯大大,
勾選 check_email_address_validity 的情況下 , 把寄信方式選擇 php mail() 是不會有問題的 (選 SMTP 才有問題 ) 所以我在想說可能牽扯到 SMTP Server(我是設定我 ISP 所提供的 SMTP Server) 支不支援這些 EmailDnsRule 的相關動作吧.. 主題: Re: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: markwu 於 十月 20, 2005, 07:57:10 下午 勾選 check_email_address_validity 的情況下 , 把寄信方式選擇 php mail() 是不會有問題的 (選 SMTP 才有問題 ) 所以我在想說可能牽扯到 SMTP Server(我是設定我 ISP 所提供的 SMTP Server) 支不支援這些 EmailDnsRule 的相關動作吧.. 應該不是,因為他是用 PHP 的 network 的 function 來檢查。得要放 debug code 去看 echo 出來的 message 才知道。 Mark 主題: Re: 新增使用者 --> 一直說 "電子郵件格式錯誤" 作者: lss 於 十月 20, 2005, 09:35:04 下午 有一個可能是該 email 沒有實體帳號。
我使用一個 alias 的 email 就無法通過 emaildnsrule 的檢查。我想應該是這個 alias 無法當帳號登入,才會無法通過檢查吧。 很多 ISP 的 email 應該也是沒有實體帳號,而是用虛擬帳號。我猜這也可能是無法通過 emaildnsrule 檢查的原因之一。 |