2015-10-28 1 views
0

Je veux que mon utilisateur de sélectionner plusieurs contacts et exporter leurs données dans format.This vcard est mon contrôleur:vcard export télécharger en Codeigniter ne fonctionne qu'une fois

function get_contacts_email_vcard() 
      { 
       $this->load->library('vcard');     
       $datavcard = $this->getvcard($this->user_model->get_email_contacts()); 
      } 

      function getvcard($dat) 
      { 
       $datavcarddata = array(); 
       foreach($dat as $data){ 
       $datavcarddata['display_name'] = $data->name;             
       $datavcarddata['cell_tel'] = $data->mobile_no;     
       $datavcarddata['email1'] = $data->email; 
       if (is_array($datavcarddata)) 
       {  
        $this->vcard->vcard($datavcarddata); 
       } 
       else 
       { 
        $this->vcard->vcard(); 
       } 
       $this->vcard->zipdownload(); 
       } 
       return $datavcarddata; 
      } 

Voici mon avis:

<li><a href="<?php echo base_url(); ?>auth/get_contacts_email_vcard">vCard(Address Book)</a></li> 

Ceci est mon modèle:

$this->db->select('*'); 
      $this->db->from('contacts'); 
      $this->db->where('user_id', $this->session->userdata('user_id')); 
      $this->db->order_by('date_created', 'DESC'); 
      $query = $this->db->get(); 
      $result = $query->result(); 
      return $result; 

La question que je suis confronté est que cela fonctionne qu'une seule fois. Seules les données du dernier contact de ma base de données sont téléchargées dans un fichier zip. Je veux créer différents fichiers zip ou fichiers vcf pour différents contacts. Et je veux aussi créer un seul fichier zip contenant tous les fichiers vcf.

+0

Je ne sais pas comment fonctionne la librairie vcard, mais si c'est le coupable. At-il des méthodes qui retournent les données de vcard afin que vous puissiez le mettre dans un tableau et compresser toutes les cartes ensemble? – Jerry

+0

Merci pour la réponse. Je ne suis pas sûr. J'ai essayé de créer un tableau et de le compresser, mais cela n'a pas fonctionné. – AniketSrivastava

+0

J'ai utilisé cette bibliothèque: https://github.com/bcit-ci/CodeIgniter/wiki/vCard-Library – AniketSrivastava

Répondre

0

Ok, Après de nombreuses recherches, j'ai découvert qu'un simple clic (ou tout autre événement) ne peut envoyer qu'une seule demande de téléchargement au navigateur. Donc, il est impossible de télécharger plusieurs vcards