|
Vorheriges Thema: Nächstes Thema: |
Autor |
Nachricht |
Sir Quicksand Häufiger Poster
Anmeldungsdatum: 19.01.2005 Beiträge: 304 Wohnort: Hannover
|
Verfasst am: 08.08.2006 09:17:13 Titel: vcards importieren exportieren |
|
|
Hallo Freunde,
wo finde ich eine Spec zu vcards? Morgen mein Forumskalender mit dieser Funktion beglücken. |
|
Nach oben |
|
|
admin Site Admin
Anmeldungsdatum: 16.01.2005 Beiträge: 323 Wohnort: Berlin
|
Verfasst am: 08.08.2006 11:21:24 Titel: |
|
|
http://www.ietf.org/rfc/rfc2426.txt
ich hab da mal was vorbereitet:
Code: |
function vcard2array($t)
{
$t = str_replace("\r",'',$t);
$t = explode("\n",$t);
$res = array();
$res['strName'] = '';
$res['strVorname'] = '';
$res['strVorname2'] = '';
$res['strTitel'] = '';
$res['strNickname'] = '';
$res['strTelefon'] = '';
$res['strHandy'] = '';
$res['strFax'] = '';
$res['strAnschrift'] = '';
$res['strPLZ'] = '';
$res['strOrt'] = '';
$res['strBundesland'] = '';
$res['strLand'] = '';
$res['strGeschlecht'] = '';
$res['strURL'] = '';
$res['daGeburtstag'] = '';
$res['daJahrestag'] = '';
$res['strFirma'] = '';
$res['strFirmaAbteilung'] = '';
$res['strFirmaPosition'] = '';
$res['strFirmaTelefon'] = '';
$res['strFirmaFax'] = '';
$res['strFirmaPager'] = '';
$res['strFirmaAnschrift'] = '';
$res['strFirmaPLZ'] = '';
$res['strFirmaOrt'] = '';
$res['strFirmaBundesland'] = '';
$res['strFirmaLand'] = '';
$res['strFirmaURL'] = '';
$res['strMail'] = '';
$res['strMail2'] = '';
$res['strMail3'] = '';
for($i=0;$i<count($t);$i++)
{
$l = trim($t[$i]);
if($l == ''){continue;}
$pd = strlen($l); if(substr_count($l,':')>0){$pd = strpos($l,':');}
$bez = substr($l,0,$pd);
$l = substr($l,strlen($bez)+1);
$isenc = false;
if(substr_count($bez,';ENCODING=QUOTED-PRINTABLE'))
{
while(substr($l,strlen($l)-1,1) == '=')
{
$l = substr($l,0,strlen($l)-1);
$i++;
if($i>=count($t)){break;}
$l .= trim($t[$i]);
}
$bez = str_replace(';ENCODING=QUOTED-PRINTABLE','',$bez);
$isenc = true;
}
$f = explode(";",$l);
if(count($f)<7){$f[] = '';$f[] = '';$f[] = '';$f[] = '';$f[] = '';$f[] = '';}
if($isenc){for($j=0;$j<count($f);$j++){$f[$j] = quoted_printable_decode($f[$j]);}}
switch($bez)
{
case 'N' : {$res['strName'] = $f[0];$res['strVorname'] = $f[1];$res['strVorname2'] = $f[3];$res['strTitel'] = $f[4];} break;
case 'NICKNAME' : {$res['strNickname'] = $f[0];} break;
case 'ORG' : {$res['strFirma'] = $f[0];$res['strFirmaAbteilung'] = $f[1];} break;
case 'TITLE' : {$res['strFirmaPosition'] = $f[0];} break;
case 'TEL;WORK;VOICE' : {$res['strFirmaTelefon'] = $f[0];} break;
case 'TEL;HOME;VOICE' : {$res['strTelefon'] = $f[0];} break;
case 'TEL;CELL;VOICE' : {$res['strHandy'] = $f[0];} break;
case 'TEL;PAGER;VOICE' : {$res['strFirmaPager'] = $f[0];} break;
case 'TEL;WORK;FAX' : {$res['strFirmaFax'] = $f[0];} break;
case 'TEL;HOME;FAX' : {$res['strFax'] = $f[0];} break;
case 'ADR;WORK' : {$res['strFirmaAnschrift'] = $f[2];$res['strFirmaOrt'] = $f[3];$res['strFirmaBundesland'] = $f[4];$res['strFirmaPLZ'] = $f[5];$res['strFirmaLand'] = $f[6];} break;
//case 'LABEL;WORK' : {$res['str'] = $f[0];} break;
case 'ADR;HOME' : {$res['strAnschrift'] = $f[2];$res['strOrt'] = $f[3];$res['strBundesland'] = $f[4];$res['strPLZ'] = $f[5];$res['strLand'] = $f[6];} break;
//case 'LABEL;HOME' : {$res['str'] = $f[0];} break;
case 'URL;HOME' : {$res['strURL'] = $f[0];} break;
case 'URL;WORK' : {$res['strFirmaURL'] = $f[0];} break;
case 'BDAY' : {$res['daGeburtstag'] = substr($f[0],0,4).'-'.substr($f[0],4,2).'-'.substr($f[0],6,2);} break;
case 'EMAIL;PREF;INTERNET' : {$res['strMail'] = $f[0];} break;
case 'EMAIL;INTERNET' :
{
if($res['strMail2'] != '' && $res['strMail3'] == ''){$res['strMail3'] = $f[0];}
else if($res['strMail2'] == ''){$res['strMail2'] = $f[0];}
} break;
case 'X-WAB-GENDER' :
{
if($f[0] == '2'){$res['strGeschlecht'] = 'm';}
else if($f[0] == '1'){$res['strGeschlecht'] = 'w';}
else{$res['strGeschlecht'] = '-';}
} break;
}
}
return $res;
}
|
|
|
Nach oben |
|
|
Sir Quicksand Häufiger Poster
Anmeldungsdatum: 19.01.2005 Beiträge: 304 Wohnort: Hannover
|
Verfasst am: 10.08.2006 14:57:27 Titel: |
|
|
Das ist einfach *räusper* und anders herum? ^^ |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|
|
|