Mark's Place

A place for Mark's murmuring, blah, blah, blah, ...

Mark's Place
Watch Timeline

我們真的都那麼容易被煽動嗎?

Mark Wu 發表於 2008/11/14 15:49 · 靜態連結網址

我們真的都那麼容易被煽動嗎?。對!真的就有那麼容易。

最近有消息說到 Yahoo 不準用帳號裡面有 taiwan 或是 taipei 等字眼來註冊,很多人就開始磨刀霍霍向 Yahoo,開始說 Yahoo 不尊重台灣人云云。我無法證實 Yahoo 到底有沒有這樣的想法,但是從程式角度來說,這純粹是 Yahoo 的 bug 吧(或說是把規格定的太嚴謹了)。

要判斷帳號裡面有沒有某些字串,在 PHP 裡面的寫法通常是:

$pattern = "taiwan";
if( !strstr( $userName, $pattern ) )
... 註冊程序 ...

或是用

$pattern = "taiwan";
if( !strpos( $userName, $pattern ) )
... 註冊程序 ...

或者還可以用

$pattern = "/taiwan/"
if( !preg_match( $pattern, $userName ) )
... 註冊程序 ...

這些寫法,不僅無法讓使用者用 taiwan 來註冊,當然也無法用 ilovetaiwan 或是 iliveintaiwan 來註冊。

而這個只要調整一下程式,應該馬上就可以解決了。

$pattern = "taiwan"
if( $userName != $pattern ) )
... 註冊程序 ...

為什麼 Yahoo 要這樣做?假設你的網站允許使用者有次網域,請問你允不允許使用者的網址是 admin.yahoo.com 還是 webmaster.yahoo.com,這會不會讓人誤會這兩個網址是 Yahoo 的官方網站?

所以~當然你還是可以繼續相信這是 Yahoo 故意欺負台灣人;而我比較想相信這應該是無心的 bug。

不過也還好有那麼多人討論這件事,Yahoo 才願意把這個 Bug 修正吧!

真實引用網址:

http://blog.markplace.net/trackback.php?id=395

迴響 (4) · 引用 (0) 文章分類: 可以做人幹嘛寫程式

迴響 ↓

  • 想問一下
    想問一下  發表於 14/11/2008, 19:44

    所以是不是,台灣站跟美國站不一樣呢?
    因為我們試了這件事情,發現同樣的一個帳號(有taiwan的),在台灣站註冊時,他說沒有人用可以註冊,但最後又說有人使用。所以就到美國站試試看,就成功了,我們選同一個結尾,就都是ymail.com。這個是不是也是bug呢?

  • 其實這是兩面刃
    Mark  發表於 15/11/2008, 01:22

    我裡面的例子只是舉 ilovetaiwan。如果現在有人用 ihatetaiwan,也應該可以註冊,那大家都恨的牙養癢的。

    Yahoo 的架構,應該是各地方有各地方的主機,他們的帳號系統是才用分散式在去同步,還是採用集中式,這實在外人無從得知。但是如果採用分散式,則各地方分公司可以有自己的規則與玩法。

    別說帳號,就連 POP3 收信,各地也是規定不同。

    如果硬要認為這是欺負台灣人,這實在是有點過頭了。所以我實在比較相信,這是 bug ... 不管是程式設計師的 bug或是 PM 規劃時的 bug。

  • 交換連結
    高藥師  發表於 02/12/2008, 04:13

    逛了很久

    發現您的網站都沒有交換連結

    有空來我的網站逛ㄧ逛吧!!!

  • 回覆: 我們真的都那麼容易被煽動嗎?
    gifthome  發表於 10/12/2008, 09:53

    我們真的都那麼容易被煽動嗎?。
    對!真的就有那麼容易。
    認同你的看法!!
    哎,現在這個社會,這種都形成風氣了!!