分享

OpenSourceInstall.org - PHPSurveyor 實作經驗分享 - 搭配 PHPList 來發送大量邀請信

 clisun 2010-08-06
PHPSurveyor 實作經驗分享 - 搭配 PHPList 來發送大量邀請信
2008/05/23, 週五

PHPSurveyor 能在短時間內製作線上問卷,只要了解它的 問卷(Survey) 、群組 (Group) 、問題 (Question) 架構,製作一份線上問卷便不是一件困難的事情。本站在4月份進行了一次會員問卷調查,受訪者有8千多位,問卷以記名方式來進行。 製作線上問卷所花的時間不長, 但是正當要發送問卷邀請信給8千多名會員時,我們發現 PHPSurveyor 並不適合發送大量信件。 它每次最多能發出 50 封信,要發出 8000 多封信會是一個費時費力的工作。

借用 PHPList 電子報發送的能力

PHPList 是另一套用 PHP 來撰寫的開放原始碼工具,能在固定的時間內自動把信件批次寄出。 本站的電子報便是利用 PHPList,自動把會員電子報送到會員的信箱。 如果要使用 PHPList 來寄問卷邀請信,我們必須克服兩大問題:

  1. 把會員名單匯入到 PHPList 發送名單(使用 PHPList 的匯入功能)
  2. 把會員的問卷網址放入信的內容。 (因為每一位會員的問卷網址都不一樣)

 


一、 準備您的問卷受訪者清單

您必須要先準備好您的問卷要訪問的對象,記錄他們的電子郵件、姓名、或其它資料。 我們從 OpenSourceInstall.org 網站的資料庫以 CSV 格式匯出了所有會員的電子郵件和姓名。

 

二、把名單匯入到 PHPSurveyor

PHPSurveyor 有提供 CSV 名單匯入功能,您的 CSV 檔案必須要有以下的欄位(範例):

firstname, lastname, email
"小明","王"," demouser1@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 "
"二明","王"," demouser2@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 "
"三明","王"," demouser3@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 "
"四明","王"," demouser4@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 "

 

三、為每一位受訪者產生確認碼

由於我們的問卷是以記名方式進行,每一位受訪者將會收到不一樣的網址,主要的差別便是多出一個亂數部份,例如:

http://tw./survey/index.php?sid=69514&token=21939218

21939218 便是所謂的確認碼,用來代表某一位受訪者的資料。 透過的 PHPSurveyor 的後台管理,只要把受訪者資料匯入成功後,便能為每一位產生一個確認碼。

 

四、匯出受訪者清單

由於我們不打算透過 PHPSurveyor 來寄出邀請信,我們必須把受訪者名單匯出,然後依照 PHPList 的方式匯入成新的發送清單。 匯出的動作很簡單,只要點選 導入 csv 檔案格式的確認碼導出 csv 檔案格式的確認碼 (如下圖所示)。

匯出 csv

 

五、將 CSV 檔案修正成 PHPLIST 可匯入格式

以下是從 PHPSurveyor 匯出來的 CSV 檔案範例:

Tid, Firstname, Lastname, Email, Token , Language, Attribute1, Attribute2, mpid
"1","小明","王"," demouser1@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 ","2871198425","zh-tw","","",""
"2","二明","王"," demouser2@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 ","3557843348","zh-tw","","",""
"3","三明","王"," demouser3@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 ","2137686691","zh-tw","","",""
"4","四明","王"," demouser4@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 ","7184182814","zh-tw","","",""

由於 PHPSurveyor 和 PHPList 所接受的匯入檔案格式不一樣,我們必須針對這個檔案作出修改。 我們推薦使用 Openoffice.org Calc 來編輯 CSV 檔案內容。 相較於 MS Excel,它完全支援 UTF-8 檔案,修改後的 CSV 檔案也能儲存為 UTF-8 格式。 不管您的受訪者名稱是否為簡體字、日文或韓文都不會造成亂碼問題。

UTF-8

利用 Calc 來移除 Tid,Language,Attribute1, Attribute2, mpid 欄位。

 

六、製作出新的 CSV 檔案

當使用 Calc 來儲存新的 CSV 檔案時,請特別注意不要用雙引號 ( " )作為 CSV 檔案的文字分隔符號。 利用 Calc 在儲存時提供的選項作出適當的調整。 (點選 檔案 => 另存新檔 => 勾選編輯篩選設定 => 儲存檔案,此時會彈跳出一對話視窗如下圖。)

移除雙引號

清空文字分隔符欄位,並將字型修改為 Unicode (UTF-8)。 確認後點選確定按鈕,即可完成儲存的動作。

利用文字編輯器檢視您剛製作的檔案,檔案格式應該像以下格式:

Firstname, Lastname, Email, Token
小明,王, demouser1@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 ,2871198425
二明,王, demouser2@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 ,3557843348
三明,王, demouser3@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 ,2137686691
四明,王, demouser4@hundredplus.com 這個email住址已經被防垃圾郵件程式保護,您需要啟動Javascript才能觀看 ,7184182814

 

七、在 PHPLIST 中建立使用者自訂欄位

記得我們在 PHPSurveyor 為每一位受訪者產生了一個確認碼,這些額外資料都會變成 PHPList 中使用者的自訂欄位資料。 以系統管理者 登入 PHPLIST 後,先建立一個發送清單,然後在使用者設定中建立新的自訂欄位 ,分別為 Firstname,Lastname 和 Token,讓每一筆 PHPList 的收件者都有這三筆資料。 當新增自訂欄位完成後,可看到新增的欄位如下圖。

移除雙引號

 

八、建立新的 PHPLIST 發送清單

點選 管理使用者 => 匯入使用者,即可開始執行檔案匯入,而匯入使用者有四個選項可以選擇,依照我們檔案的特性,請選擇 從 csv 檔案匯入訂閱者(訂閱者有不同的屬性值)。 匯入時請使用以下選項:

  • 檔案包含電子郵件數量:選擇剛剛編輯好的 CSV 檔案
  • 欄位分隔字元:依照之前提示,輸入逗號 ( , )。
  • 測試輸出:使用者若擔心填寫錯誤可先測試匯入。
  • 立刻訂閱:若你不需要測試,可直接勾選立刻訂閱。

請確認無誤後,點選匯入按鈕,即可完成確認。

 

九、編寫邀請信樣板

最後,我們透過 PHPList 來撰寫開卷邀請信。 信件內容其實跟 PHPSurveyor 的邀請信大同小異,唯一要注意的地方是必須將受訪者正確的問卷網址,以 Placeholders ( 網站變數 )方式填入。 Placeholders 的樣子通常為 [SOMETEXT],我們以本站上次所寄送的邀請信為例。

移除雙引號

紅色的圈選,即我們之前所建立的自訂欄位名稱。郵件正下方的 URL 是受訪者問卷網址,當電子郵件寄出時,所有 Placeholder 都會被使用者的實際的資料所取代,如果一切順利完成,即可開始的寄發問卷的邀請信。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多