2012-10-15 101 views
3

我有一個PHP腳本,可以根據網站上輸入的詳細信息生成名片模板。創建vCard QR碼

我們最近決定將QR碼vCards添加到名片中,作爲保存聯繫信息的簡單方法。我使用this教程作爲起點。

但是,我的QR碼不起作用。它一直給我沒有結果和格式作爲文本。

下面是創建虛擬卡,並顯示該QR代碼的腳本:

$vcard = "BEGIN:VCARD\r\nVERSION:3.0\r\n 
N:" . $_POST['surname'] . ";" . $_POST['name'] . "\r\n 
FN:" . $_POST['name'] . " " . $_POST['surname'] . "\r\n 
ORG:Example Organisation\r\n 
TITLE:" . $_POST['position'] . " [" . $_POST['qualification'] . "]\r\n 
TEL;TYPE=work,voice:" . $_POST['telephone'] . "\r\n 
TEL;TYPE=cell,voice:" . $_POST['cellno'] . "\r\n 
TEL;TYPE=work,fax:" . $_POST['fax'] . "\r\n 
URL;TYPE=work:www.example.com\r\n 
EMAIL;TYPE=internet,pref:" . $_POST['email'] . "\r\n 
REV:" . date('Ymd') . "T195243Z\r\n 
END:VCARD"; 

echo '<img src="http://chart.apis.google.com/chart?chs=500x500&cht=qr&chld=H&chl="' . urlencode($vcard) . '"/>'; 

任何援助?

+0

你可以顯示'$ vcard'的內容嗎?這裏顯示的是 – bendataclear

+0

。除非我沒有正確理解你。 – Albert

+0

你能用純文本顯示結果而不是生成結果嗎?要麼提供一個鏈接到您正在檢索的谷歌圖表的示例鏈接? – bendataclear

回答

4

將雙引號編碼到QR碼中,如果您刪除這些引號(應該避免任何特殊字符被編碼時出錯),它應該可以正常工作。

卸下報價給我,這似乎來解決這個QR代碼:

QR Code

+0

太棒了。像引號一樣小......它總是很小。感謝您的幫助。 – Albert

0

只要改變:

echo 'img src="http://chart.apis.google.com/chart?chs=500x500&cht=qr&chld=H&chl="' . urlencode($vcard) . '"/'; 

到:

echo 'img src="http://chart.apis.google.com/chart?chs=500x500&cht=qr&chld=H&chl=' . urlencode($vcard) . '"/'; 

這是因爲你關閉,用「來自TAG的SRC <img>