2012-04-10 27 views
7

Tôi có một chức năng đồ thị mở đơn giản trên ứng dụng facebook của mình và tôi đăng một số văn bản động trên facebook. Đây là mã của tôi:cách giải quyết vấn đề ngoặc kép trong tài khoản facebook og title

<!DOCTYPE HTML> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# APP: http://ogp.me/ns/fb/APP#"> 
    <meta property="fb:app_id"  content="00000000000000" /> 
    <meta property="og:type"  content="XXX:XXX" /> 
    <meta property="og:url"   content="http://example.com" /> 
    <meta property="og:title"  content="<?php echo $_GET['title']; ?>" /> 
    <meta property="og:description" content=" " /> 
    <meta property="og:image"  content="<?php echo $_GET['image']; ?>" /> 

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
</head> 

Vấn đề là khi có dấu ngoặc kép bên trong $ _GET ['title'] chỉ thay đổi một phần trước khi báo giá được gửi đến facebook. Tôi biết tại sao điều này xảy ra nhưng không thể nghĩ ra giải pháp nào cho vấn đề này. Bất kỳ ý tưởng?

+0

Cảm ơn David. Nhưng giải pháp của bạn đã tạo ra các vấn đề với các ký tự nổi bật (é è ...) vì vậy tôi đã thử ' 'và nó làm việc tốt hơn cho tôi – Thithi32

+0

Bằng cách này, có vẻ như facebook không thích các dấu nháy kép anyway. Trong mỗi cửa sổ bật lên chia sẻ tôi đã xem qua, văn bản sau trích dẫn kép đầu tiên bị tước đi, ngay cả khi thực thể được mã hóa đúng cách. Infact Tôi đề nghị tác giả của tôi sử dụng dấu nháy đơn hoặc «dấu ngoặc kép góc» – DrLightman

+0

Ngay cả khi sử dụng trình gỡ rối [link] (https://developers.facebook.com/tools/debug/sharing/) nó cho thấy nó không tìm nạp văn bản sau ký tự ngoặc kép đầu tiên. – DrLightman

Trả lời

14

<?php echo htmlentities($_GET['title'], ENT_QUOTES); ?> sẽ hoạt động?

+0

Điểm tốt, cảm ơn! –

Các vấn đề liên quan