Suchen
Inside Forum
Nützliche Links
Werbung
phpforum.de Tipp
PHP Jobs
 
phpforum.de bei Facebook
 
phpforum.de bei Twitter
 
PHP Test



Zurück   PHP Forum: phpforum.de > PHP > PHP

PHP Alles rund um PHP

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 12.02.2007, 13:06
Cenny Cenny ist offline
Neuer Besucher
 
Registriert seit: 12.02.2007
Beiträge: 8
Standard

Hallo,

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
Mein Problem ist genau, dass zum einen beim Schreiben in eine CSV-Datei mit fputcsv, er jedes 'Feld' in dem ein Leerzeichen steht in Anführungszeichen setzt ("Zum Beispiel").
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]
Mit Zitat antworten
  #2  
Alt 12.02.2007, 14:36
Cenny Cenny ist offline
Neuer Besucher
 
Registriert seit: 12.02.2007
Beiträge: 8
Standard

Zitat:
Cenny postete
Mein Problem ist genau, dass zum einen beim Schreiben in eine CSV-Datei mit fputcsv, er jedes 'Feld' in dem ein Leerzeichen steht in Anführungszeichen setzt ("Zum Beispiel").
Auf wikipedia.org habe ich schon gesehen, dass Anführungszeichen genutzt werden, um bestimmte Sachen zu unterbinden. Ich schätze also mal, dass Outlook damit klar kommen würde, oder besser gesagt hoffe es!
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..
Mit Zitat antworten
  #3  
Alt 12.02.2007, 14:39
mYkon mYkon ist offline
Vorbildlicher Helfer
 
Registriert seit: 02.11.2006
Ort: Schweiz
Beiträge: 6.426
Standard

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?
Mit Zitat antworten
  #4  
Alt 12.02.2007, 14:42
Cenny Cenny ist offline
Neuer Besucher
 
Registriert seit: 12.02.2007
Beiträge: 8
Standard

Zitat:
mYkon postete
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?
Doch, was da drin stehen soll, weiß ich schon. aber ich habe das Problem, dass die Datei scheinbar nicht das richtig Format hat, damit Outlook diese Datei importieren kann..
Mit Zitat antworten
  #5  
Alt 12.02.2007, 14:54
mYkon mYkon ist offline
Vorbildlicher Helfer
 
Registriert seit: 02.11.2006
Ort: Schweiz
Beiträge: 6.426
Standard

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
Mit Zitat antworten
  #6  
Alt 12.02.2007, 15:14
Cenny Cenny ist offline
Neuer Besucher
 
Registriert seit: 12.02.2007
Beiträge: 8
Standard

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?
Mit Zitat antworten
  #7  
Alt 12.02.2007, 15:21
mYkon mYkon ist offline
Vorbildlicher Helfer
 
Registriert seit: 02.11.2006
Ort: Schweiz
Beiträge: 6.426
Standard

kurz und bündig: du brauchst eine csv datei im dos format das sich in outlook importieren lässt...?
Mit Zitat antworten
  #8  
Alt 12.02.2007, 15:23
Cenny Cenny ist offline
Neuer Besucher
 
Registriert seit: 12.02.2007
Beiträge: 8
Standard

Genau, und wie kann ich mir die mit php erstellen?
Mit Zitat antworten
  #9  
Alt 12.02.2007, 15:28
combie combie ist gerade online
Forum-Mitarbeiter
 
Registriert seit: 29.07.2005
Beiträge: 33.584
Standard

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...
Mit Zitat antworten
  #10  
Alt 12.02.2007, 15:30
Cenny Cenny ist offline
Neuer Besucher
 
Registriert seit: 12.02.2007
Beiträge: 8
Standard

kannst du mir auch den Zeichensatz sagen?
Mit Zitat antworten


Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu
Ä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


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:34 Uhr.


Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Powered by NuWiki v1.3 RC1 Copyright ©2006-2007, NuHit, LLC