Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]średnik jako separator w csv excel a średnik w kodzie html
Forum PHP.pl > Forum > Przedszkole
jhoihkjhkhnkh
Eksportuje bazę danych do pliku csv do edycji w excel, libreoffice. Mam w db kolumnę gdzie wpisywany jest kod html:
  1. <p><br /><strong><span style=\"font-size: 14px; font-family: verdana,geneva;\">foo</span></strong></p>

Separatorami pól w wyeksportowanym pliku jest średnik.

Libre office radzi sobie z tym i zawartość kodu html ze średnikiem nie traktuje jako separator a openOffice i Excel widząc średnik przeskakuje do kolejnej kolumny.

O co chodzi?
Pyton_000
Ustawić np. , jako separator.
Albo podczas importowania do Excel podpicować ustawienia.
jhoihkjhkhnkh
Cytat(Pyton_000 @ 31.07.2017, 12:29:24 ) *
Ustawić np. , jako separator.

no ale co to zmieni, wtedy gdy trafi na przecinek to przejdzie w nową kolumnę
Cytat(Pyton_000 @ 31.07.2017, 12:29:24 ) *
Albo podczas importowania do Excel podpicować ustawienia.

w sensie w ustawieniach programu excel?
viking
Jak sama nazwa wskazuje CSV to comma-separated values. Wszystkie znaki separatora powinny się zawierać wewnątrz "" i nie powinno być problemu. Escape przez podwójne "".
jhoihkjhkhnkh
Cytat(viking @ 31.07.2017, 12:49:54 ) *
Wszystkie znaki separatora powinny się zawierać wewnątrz "" i nie powinno być problemu. Escape przez podwójne "".

Nie czaję. Jak to co piszesz zastosować w funkcji fputcsv



fputcsv ( resource $handle , array $fields [, string $delimiter = "," [, string $enclosure = '"' [, string $escape_char = "\" ]]] )
viking
Jak escapujesz te dane wkładane do bazy?
jhoihkjhkhnkh
Cytat(viking @ 31.07.2017, 13:11:52 ) *
Jak escapujesz te dane wkładane do bazy?

przy eksporcie z bazy czy przy imporcie do bazy?
viking
W pierwszym poście jak wnioskuję pokazałeś kod bezpośrenio z bazy więc pewnie przy zapisie robisz jakieś add_slashes czy inną bzdurę.
jhoihkjhkhnkh
maddslashes
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.