2011-12-31 9 views
15

के रूप में प्रदर्शित करता है मेरे पास मेरी साइट पर एक नई सुविधा है जो उपयोगकर्ता को vcard फ़ाइलों को प्राप्त करने की अनुमति देती है। यह सुविधा मेरे डेटाबेस से डेटा पढ़ती है (जो यह काम करता है) और vcard उत्पन्न करता है।php vcard सादे पाठ

फ़ाइल है: vcard.php और मैं के रूप में प्राप्त

तो मैं सभी कि आईडी

मेरी समस्या है जब मैं vcard प्राप्त करना चाहते हैं का उपयोग कर जानकारी प्राप्त प्रयोक्ता आईडी गुजरती हैं, यह के रूप में प्रदर्शित पाठ।

<?php 

class Vcard { 

    public function __construct() { 
    $this->props = array(); 
    } 

    public function setName($family, $first) { 
    $name = $family . ';' . $first . ';'; 
    $this->props['N'] = $name; 
    if(!isset($this->props['FN'])) { 
     $display = $first . ' '; 
     $display .= $family; 
     $this->props['FN'] = trim($name); 
    } 
    } 
    /* and all the rest of my props */ 
    public function get() { 
    $text = 'BEGIN:VCARD' . "\r\n"; 
    $text.= 'VERSION:2.1' . "\r\n"; 
    foreach($this->props as $key => $value) { 
     $text .= $key . ':' . $value . "\r\n"; 
    } 
    $text.= 'REV:' . date("Y-m-d") . chr(9) . date("H:i:s") . "\r\n"; 
    $text.= 'MAILER:My VCard Generator' . "\r\n"; 
    $text.= 'END:VCARD' . "\r\n"; 
    return $text; 
    } 
} 

$v = new Vcard(); 
$v->setName('Smith', 'John'); 
echo $v->get(); 

कोड, काम करता है क्यों यह vcard के रूप में यह नहीं मिलता है: यहाँ मेरी कोड का एक सरलीकृत संस्करण है?

उत्तर

18

को देखते हुए http://en.wikipedia.org/wiki/VCard

आप निश्चित रूप से आदेश ग्राहक के ब्राउज़र है कि यह किसी VCard फ़ाइल प्राप्त होगा बताने के लिए पहले echo $v->get();

header('Content-Type: text/vcard'); 

निम्न पंक्ति जोड़ने की जरूरत है।

+0

धन्यवाद यह आपके काम करता है – goblar

संबंधित मुद्दे