Voici un p'tit script que j'ai créé pour créer des vcards :
// Collecte des données de la VCard
$vcard['titre'] = "M.";
$vcard['nom'] = "Leroy";
$vcard['prenom'] = "Michel";
$vcard['prenom2'] = "";
$vcard['surnom'] = "l.Michel";
$vcard['dateNaissance'] = date("Ymd", strtotime("01/01/1990"));
$vcard['mobiles'] = "+33(06)24000000";
$vcard['sitesWeb']['perso'] = "l.Michel.free.fr";
$vcard['sitesWeb']['pro'] = "";
$vcard['emails']['perso'] = "[email protected]";
$vcard['emails']['pro'] = "";
//
$vcard['domicile']['rue'] = "1 Rue des fleurs";
$vcard['domicile']['cp'] = 72000;
$vcard['domicile']['ville'] = "Le Mans";
$vcard['domicile']['département'] = "Sarthe";
$vcard['domicile']['région'] = "Pays de la loire";
$vcard['domicile']['Pays'] = "France";
$vcard['domicile']['téléphones'] = "+33(02)43000000";
$vcard['domicile']['fax'] = "";
//
$vcard['travail']['organisme'] = "Chez Michel";
$vcard['travail']['service'] = "Développement";
$vcard['travail']['bureau'] = "Programmation Web";
$vcard['travail']['fonction'] = "Analyste programmeur";
$vcard['travail']['rue'] = "1 rue de la gare";
$vcard['travail']['cp'] = 72000;
$vcard['travail']['ville'] = "Le Mans";
$vcard['travail']['département'] = "Sarthe";
$vcard['travail']['région'] = "Pays de la loire";
$vcard['travail']['Pays'] = "France";
$vcard['travail']['téléphones'] = "+33(02)43000000";
$vcard['travail']['fax'] = "+33(02)43000000";
//
$vcard['uid'] = md5("$vcard[nom]}{$vcard[prenom]}"); //cryptage basé sur le nom et prénom
$vcard['dateCréation'] = date("Ymd"); // date création de la VCard
// Création du fichier VCard
$etat = file_put_contents("{$vcard[nom]}_{$vcard[prenom]}.vcf",
"BEGIN:VCARD
VERSION:2.1
N:{$vcard[nom]};{$vcard[prenom]};{$vcard[prenom2]};{$vcard[titre]}
FN:{$vcard[prenom]} {$vcard[nom]}
NICKNAME:{$vcard[surnom]}
ORG:{$vcard[travail][organisme]};{$vcard[travail][service]}
TITLE:{$vcard[titre]}
TEL;WORK;VOICE:{$vcard[travail][téléphones]}
TEL;HOME;VOICE:{$vcard[domicile][téléphones]}
TEL;CELL;VOICE:{$vcard[mobiles]}
TEL;WORK;FAX:{$vcard[travail][fax]}
TEL;HOME;FAX:{$vcard[domicile][fax]}
ADR;HOME:;{$vcard[domicile][bureau]};{$vcard[domicile][rue]};{$vcard[domicile][ville]};{$vcard[domicile][département]}/{$vcard[domicile][région]};{$vcard[domicile][cp]};{$vcard[domicile][pays]}
ADR;WORK:;{$vcard[travail][bureau]};{$vcard[travail][rue]};{$vcard[travail][ville]};{$vcard[travail][département]}/{$vcard[travail][région]};{$vcard[travail][cp]};{$vcard[travail][pays]}
LABEL;HOME;ENCODING=QUOTED-PRINTABLE:{$vcard[domicile][bureau]}=0D=0A{$vcard[domicile][rue]}=0D=0A{$vcard[domicile][cp]} {$vcard[domicile][ville]}, {$vcard[domicile][département]}/{$vcard[domicile][région]}=0D=0A{$vcard[domicile][pays]}
LABEL;WORK;ENCODING=QUOTED-PRINTABLE:{$vcard[travail][bureau]}=0D=0A{$vcard[travail][rue]}=0D=0A{$vcard[travail][cp]} {$vcard[travail][ville]}, {$vcard[travail][département]}/{$vcard[travail][région]}=0D=0A{$vcard[travail][pays]}
URL;WORK:{$vcard[sitesWeb][perso]}
ROLE:{$vcard[travail][fonction]}
BDAY:{$vcard[dateNaissance]}
EMAIL;PREF;INTERNET:{$vcard[emails][perso]}
REV:$dateCréation
UID:$uid
END:VCARD");
//
// Afficher le résultat
echo "<h1>Vcard: {$vcard[nom]}_{$vcard[prenom]}.vcf</h1>";
print_r($vcard);
// Etat de l'exécution
if ($etat && file_exists("{$vcard[nom]}_{$vcard[prenom]}.vcf")){
echo "<h5><i>Etat: Vcard bien créée: <a href=\"{$vcard[nom]}_{$vcard[prenom]}.vcf\">Visualiser</a></i></h5>";
}
else {
echo "<h5><i>Etat: Vcard non créée!</i></h5></p>";
}
NOTA: Les données d'exemple sont écrites en dur, elle peuvent être remplacées par des $_GET ou $_POST pour interfacer ce programme avec un formulaire de collecte des données.
Voici un p'tit script que j'ai créé pour créer des vcards :
[php]// Collecte des données de la VCard
$vcard['titre'] = "M.";
$vcard['nom'] = "Leroy";
$vcard['prenom'] = "Michel";
$vcard['prenom2'] = "";
$vcard['surnom'] = "l.Michel";
$vcard['dateNaissance'] = date("Ymd", strtotime("01/01/1990"));
$vcard['mobiles'] = "+33(06)24000000";
$vcard['sitesWeb']['perso'] = "l.Michel.free.fr";
$vcard['sitesWeb']['pro'] = "";
$vcard['emails']['perso'] = "
[email protected]";
$vcard['emails']['pro'] = "";
//
$vcard['domicile']['rue'] = "1 Rue des fleurs";
$vcard['domicile']['cp'] = 72000;
$vcard['domicile']['ville'] = "Le Mans";
$vcard['domicile']['département'] = "Sarthe";
$vcard['domicile']['région'] = "Pays de la loire";
$vcard['domicile']['Pays'] = "France";
$vcard['domicile']['téléphones'] = "+33(02)43000000";
$vcard['domicile']['fax'] = "";
//
$vcard['travail']['organisme'] = "Chez Michel";
$vcard['travail']['service'] = "Développement";
$vcard['travail']['bureau'] = "Programmation Web";
$vcard['travail']['fonction'] = "Analyste programmeur";
$vcard['travail']['rue'] = "1 rue de la gare";
$vcard['travail']['cp'] = 72000;
$vcard['travail']['ville'] = "Le Mans";
$vcard['travail']['département'] = "Sarthe";
$vcard['travail']['région'] = "Pays de la loire";
$vcard['travail']['Pays'] = "France";
$vcard['travail']['téléphones'] = "+33(02)43000000";
$vcard['travail']['fax'] = "+33(02)43000000";
//
$vcard['uid'] = md5("$vcard[nom]}{$vcard[prenom]}"); //cryptage basé sur le nom et prénom
$vcard['dateCréation'] = date("Ymd"); // date création de la VCard
// Création du fichier VCard
$etat = file_put_contents("{$vcard[nom]}_{$vcard[prenom]}.vcf",
"BEGIN:VCARD
VERSION:2.1
N:{$vcard[nom]};{$vcard[prenom]};{$vcard[prenom2]};{$vcard[titre]}
FN:{$vcard[prenom]} {$vcard[nom]}
NICKNAME:{$vcard[surnom]}
ORG:{$vcard[travail][organisme]};{$vcard[travail][service]}
TITLE:{$vcard[titre]}
TEL;WORK;VOICE:{$vcard[travail][téléphones]}
TEL;HOME;VOICE:{$vcard[domicile][téléphones]}
TEL;CELL;VOICE:{$vcard[mobiles]}
TEL;WORK;FAX:{$vcard[travail][fax]}
TEL;HOME;FAX:{$vcard[domicile][fax]}
ADR;HOME:;{$vcard[domicile][bureau]};{$vcard[domicile][rue]};{$vcard[domicile][ville]};{$vcard[domicile][département]}/{$vcard[domicile][région]};{$vcard[domicile][cp]};{$vcard[domicile][pays]}
ADR;WORK:;{$vcard[travail][bureau]};{$vcard[travail][rue]};{$vcard[travail][ville]};{$vcard[travail][département]}/{$vcard[travail][région]};{$vcard[travail][cp]};{$vcard[travail][pays]}
LABEL;HOME;ENCODING=QUOTED-PRINTABLE:{$vcard[domicile][bureau]}=0D=0A{$vcard[domicile][rue]}=0D=0A{$vcard[domicile][cp]} {$vcard[domicile][ville]}, {$vcard[domicile][département]}/{$vcard[domicile][région]}=0D=0A{$vcard[domicile][pays]}
LABEL;WORK;ENCODING=QUOTED-PRINTABLE:{$vcard[travail][bureau]}=0D=0A{$vcard[travail][rue]}=0D=0A{$vcard[travail][cp]} {$vcard[travail][ville]}, {$vcard[travail][département]}/{$vcard[travail][région]}=0D=0A{$vcard[travail][pays]}
URL;WORK:{$vcard[sitesWeb][perso]}
ROLE:{$vcard[travail][fonction]}
BDAY:{$vcard[dateNaissance]}
EMAIL;PREF;INTERNET:{$vcard[emails][perso]}
REV:$dateCréation
UID:$uid
END:VCARD");
//
// Afficher le résultat
echo "<h1>Vcard: {$vcard[nom]}_{$vcard[prenom]}.vcf</h1>";
print_r($vcard);
// Etat de l'exécution
if ($etat && file_exists("{$vcard[nom]}_{$vcard[prenom]}.vcf")){
echo "<h5><i>Etat: Vcard bien créée: <a href=\"{$vcard[nom]}_{$vcard[prenom]}.vcf\">Visualiser</a></i></h5>";
}
else {
echo "<h5><i>Etat: Vcard non créée!</i></h5></p>";
}[/php]
[b]NOTA:[/b] Les données d'exemple sont écrites en dur, elle peuvent être remplacées par des $_GET ou $_POST pour interfacer ce programme avec un formulaire de collecte des données.