|
#1
|
|||
|
|||
|
ich möchte für die Firma in der ich arbeite, eine PHP-Seite mit Kalender erstellen, auf der man auch eine immer aktuelle CSV-Datei runterladen und im eigenen Outlook importieren kann. Mit Kalender und soweiter das geht, mein Problem ist jetzt folgendes: Ich möchte mit PHP eine CSV-Datei erstellen. Jedes mal beim aufrufen einer Seite, wo eine Tabelle mit Namen und Geburtsdaten ist, wird diese Datei neu geschrieben, und auf der Seite gibt's einen Link, sodass die Datei runtergeladen werden kann. Die Datei soll eine Kommagetrennte CSV-Datei sein und wie folgt aussehen: Code:
Betreff,Beginntam,Beginntum,Endetam,Endetum,GanztägigesEreignis,ErinnerungEin/Aus,Erinnerungam,Erinnerungum,Besprechungsplanung,ErforderlicheTeilnehmer,OptionaleTeilnehmer,Besprechungsressourcen,Abrechnungsinformationen,Beschreibung,Kategorien,Ort,Priorität,Privat,Reisekilometer,Vertraulichkeit,Zeitspannezeigenals
GeburtstagvonMaxMustermann,31.12.2007,00:00:00,31.12.2007,23:59:59,Ein,Ein,31.12.2007,00:00:00,,00:00:00,,,,,,,,,Normal,Aus,,Normal,3 GeburtstagvonMamaMia,29.1.2007,00:00:00,29.1.2007,23:59:59,Ein,Ein,29.1.2007,00:00:00,,00:00:00,,,,,,,,,Normal,Aus,,Normal,3 Zum anderen hab ich das Problem, dass die Datei nicht in Outlook importiert werden kann, ich glaube dies liegt am Format der Datei, weiß aber nicht genau wie diese formatiert werden muss. Beim öffnen der erstellten Datei im Editor fragt er ob die Datei ins DOS-Format umgewandelt werden soll, ist das der Grund, reicht und geht das? Bei der Vorlage (eine Datei die bisher händisch gepflegt ist) wird nicht gefragt. Hier nochmal mein Code: PHP Quellcode:
<?php
$sql = " SELECT id , tag , monat , geburtsjahr , vorname , name FROM geburtstage ORDER BY " . $order; $resultat = mysql_query($sql) or die("Zugriff auf Tabelle gescheitert!"); if(mysql_num_rows($resultat) != 0) {?> <table> <tr> <th> Vor- und Nachname </th> <th> Geburtsdatum </th> <th> Alter </th> </tr><?php $pfad = "..\Geburtstage(in Outlook importieren).csv"; $datei = fopen($pfad, 'w'); fputcsv($datei, split(";","Betreff;Beginnt am;Beginnt um;Endet am;Endet um;Ganztägiges Ereignis;Erinnerung Ein/Aus;Erinnerung am;Erinnerung um;Besprechungsplanung;Erforderliche Teilnehmer;Optionale Teilnehmer;Besprechungsressourcen;Abrechnungsinformationen;Beschreibung;Kategorien;Ort;Priorität;Privat;Reisekilometer;Vertraulichkeit;Zeitspanne zeigen als")); while ($lister=mysql_fetch_array($resultat)) { ?> <tr> <td><?php echo $lister['vorname'] . " " . $lister['name']; ?> </td> <td><?php echo $lister['tag'] . "." . $lister['monat'] . "."; ?></td> <td><?php echo $jahr-$lister['geburtsjahr']; ?></td> </tr><?php $csv_data = "Geburtstag von " . $lister["vorname"] . " " . $lister["name"] . "/" . $lister["tag"] . "." . $lister["monat"] . "." . $jahr . "/00:00:00/" . $lister['tag'] . "." . $lister['monat'] . "." . $jahr . "/23:59:59/Ein/Ein/" . $lister['tag'] . "." . $lister['monat'] . "." . $jahr . "/00:00:00//00:00:00/////////Normal/Aus//Normal/3"; fputcsv($datei,split('/', $csv_data)); } fclose($datei); ?> </table> [url="<?php echo $pfad; ?>"]CSV-Datei herunterladen[/url] |
|
#2
|
|||
|
|||
|
Zitat:
Aber das andere Problem habe ich immernoch, und das ist auch dringender. Hierzu habe ich etwas mit BOM (Byte Order Mark) gelesen, kann mir das weiterhelfen? Kann mir jemand sagen, wie man BOM's benutzt? Kenn mich damit leider überhaupt nicht aus und mit den Links die ich im Internet finde kann ich nichts anfangen. Danke, Cenny.. |
|
#3
|
|||
|
|||
|
hmm, also wie ich sehe kannst du deine daten schön wie du willst in eine csv datei schreiben, aber du weisst nicht was dort drin genau stehen sollte damit outlook es richtig importiert, richtig?
wie wärs wenn du mal von outlok exportierst und dir dann so eine csv datei ansiehst?
|
|
#4
|
|||
|
|||
|
Zitat:
|
|
#5
|
|||
|
|||
|
also exportieren kannst du csv? importieren kannst du csv? da gits doch kein problem... wenn er fragt ob ers im dos modus einlesen soll... ja klicken fertisch
![]() komm wieder wenn etwas nicht funktioniert... nicht wenn du dir nicht 100% sicher bist obs nicht funktioniert oder doch.... für das kann man es testen
|
|
#6
|
|||
|
|||
|
Scheinbar habe ich mich nicht richtig ausgedrückt.
Also, nochmal: Ich habe eine Vorlage, mit der das Importieren in Outlook geht. Diese wurde jedoch händisch gepflegt (geändert, nicht neugeschrieben). Um das Pflegen zu automatisieren, soll auf der Seite eine CSV-Datei erstellt werden, diese wird jedes mal beim Aufrufen der Seite neu geschrieben. Beim Klicken auf den Link kann man also die aktuelle Datei herunterladen, bei Outlook importieren und wieder löschen (zumindest soll dies in der Theorie möglich sein). Das importieren in Outlook klappt jedoch nicht. Wenn ich die automtisch erstellte Datei im Editor (UltraEdit-32) öffnen möchte um diese mit der Vorlage zu vergleichen, fragt er mich bei der automatisch erstellten Datei, ob diese ins DOS-Format gewandelt werden soll. Dies tut er bei der Vorlage nicht. Wie kann ich die Datei erstellen, sodass sie im DOS-Format ist, oder muss ich ein bestimmtes Format wählen? Wenn ja wie? |
|
#7
|
|||
|
|||
|
kurz und bündig: du brauchst eine csv datei im dos format das sich in outlook importieren lässt...?
|
|
#8
|
|||
|
|||
|
Genau, und wie kann ich mir die mit php erstellen?
|
|
#9
|
|||
|
|||
|
Den richtigen Zeichensatz und die richtigen Zeilenenden verwenden!!
Win braucht \r\n als Zeilenende
__________________
Bitte immer nur im Schritttempo denken. Wer in die falsche Richtung läuft, braucht sich nicht zu beeilen... |
|
#10
|
|||
|
|||
|
kannst du mir auch den Zeichensatz sagen?
|
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Problem beim Import von CSV-Datei | heiko123 | PHP | 5 | 03.06.2007 09:46 |
| .vcf (Outlook) Datei per PHP erstellen? | Oliver1406 | PHP | 6 | 31.05.2007 13:11 |
| import einer sql dump datei | tpk | Datenbanken | 16 | 16.08.2006 15:13 |
| Phpmyadmin datei import | Supermuh2000 | Datenbanken | 3 | 12.02.2005 10:36 |
| Import von großer Datei | Helix | Datenbanken | 4 | 22.10.2003 22:00 |