[PHP/CSV] CSV-export met PHP uit MYSQL voor import in Outloo

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hey iedereen,

Ik heb een probleem met het exporteren van een CSV bestand uit een database. De database bevat een agenda en het is de bedoeling om die te importeren in Outlook. Ik krijg mijn gegeven in het juist CSV formaat (identiek aan een export uit Outlook) maar het importeren van een door php gemaakt .csv bestand kan niet worden geïmporteerd in Outlook.

Mijn script ziet er ongeveer als volgt uit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
header("Content-Type: text/comma-separated-values");
header("Content-Disposition: attachment; filename=agenda.csv");

$csv_terminated = "\n";
$csv_separator = ",";
$csv_enclosed = '"';
$csv_escaped = "\\";


$out = "\"Onderwerp\",\"Begindatum\",\"Begintijd\",\"Einddatum\",\"Eindtijd\",\"Beschrijving\",\"Locatie\"\n";
$out .= "\"test\",\"test\",\"test\",\"test\",\"test\",\"test\",\"test\"\n";

print ($out);


Niet belangrijke informatie heb ik er even uitgehaald. Ik heb al intensief gezocht naar een oplossing maar geraakt niet verder. Het probleem volgens mij is dat Outlook een CSV bestand verwacht met een DOS-Text (CR+LF) formaat terwijl de CSV bestanden die mijn php script maakt, altijd in UNIX Text (LF) zijn. Ik kan die natuurlijk wel manueel veranderen op mijn desktop maar zou liever hebben dat die rechtstreeks te importeren zijn.

Ik weet dat het mogelijk is om PHP een CRLF bestand te laten genereren want phpmyadmin kan dat via de exportfunctie. Ik heb een beetje in de broncode zitten snuffelen maar daar ben ik ook niet wijzer uit geworden.

Iemand die mij kan helpen?

Hartelijk dank!

Acties:
  • 0 Henk 'm!

  • TheBorg
  • Registratie: November 2002
  • Laatst online: 20-09 18:24

TheBorg

Resistance is futile.

$csv_terminated = "\r\n"';

Acties:
  • 0 Henk 'm!

  • b19a
  • Registratie: September 2002
  • Niet online
Ik neem aan dat je MS Excel bedoelt? Dat spreadsheetprogramma?

Om een DOS (Windows) regeleinde te maken kun je de volgende code gebruiken:
code:
1
\r\n


edit:
te laat

[ Voor 6% gewijzigd door b19a op 05-02-2008 23:29 ]


Acties:
  • 0 Henk 'm!

  • FragFrog
  • Registratie: September 2001
  • Laatst online: 09:34
Je weet dat er ook een specifiek agenda export/import formaat is? Ooit (jaren geleden) eens iets mee gedaan, heeft veel weg van een RSS feed en valt wel prima te importeren in zowel Outlook als bijvoorbeeld google calender, wellicht dat je anders daar eens naar moet kijken? :)

* FragFrog zou het namelijk zeer verbazen als Outlook al valt over een \n ipv een \r\n

[ Voor 13% gewijzigd door FragFrog op 06-02-2008 01:44 ]

[ Site ] [ twitch ] [ jijbuis ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
\r\n doet het! Bedankt!! En ik bedoel weldegelijk MS Outlook, niet Excel ;)

@FragFrog: bedoel je iCal? CSV en iCal zijn beide ondersteund door Outlook en Google Calendar (de twee applicaties waartoe ik mij richt). Ik had de keuze gemaakt van CSV maar niets houdt mij tegen om ook eens iCal uit te proberen.

Bedankt voor de hulp!

[ Voor 13% gewijzigd door Verwijderd op 06-02-2008 22:14 ]