• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Tworzenie pliku xls w PHP

VPS Starter Arubacloud
0 głosów
756 wizyt
pytanie zadane 12 września 2018 w PHP przez czujek22 Dyskutant (7,670 p.)

Witam. Potrzebuję w PHP stworzyć plik XLS z danymi z bazy na serwerze. Plik ten ostatecznie będzie pobierany po wciśnięciu buttona. Aktualnie mam skrypt tworzący plik CSV ale chcę aby uzytkownik mógł mieć możliwość pobrania od razu pliku XLS. 

header('Content-Type: text/csv; charset:UTF-8');
header('Content-Disposition: attachment; filename=plik.csv');
$output = fopen('php://output', 'w');
fputcsv($output, array('EAN ', ' Nazwa', ' Ilosc ', ' Cena '));
if (count($itemy) > 0) {
    foreach ($itemy as $row) {
        fwrite($output, "$row[barcode_id],\"$row[item]\",$row[ilosc],$row[price]\n");
    }
}

Ewentualnie czy da się zmienić CSV na XLS w kodzie PHP ?

3 odpowiedzi

+2 głosów
odpowiedź 12 września 2018 przez efiku Szeryf (75,160 p.)
Użyj composera i dograj sobie tą bibliotekę:
https://github.com/PHPOffice/PhpSpreadsheet
komentarz 13 września 2018 przez czujek22 Dyskutant (7,670 p.)

Dzieki ale zrobiłem to zwykłym

header('Content-Type: text/xls')

tworząc zawartość pliku na tabeli i poszło bez potrzeby instalowania bibliotek :)

+1 głos
odpowiedź 12 września 2018 przez Tomek Sochacki Ekspert (227,510 p.)
A masz te dane z bazy u klienta, czy są one tylko na serwerze? Bo jeśli na przykład i tak wysyłałbyś te dane "nieobronione w xls", czyli np. jakimś JSONem to można zrobić generowanie xlsx client-side.

I tak na marginesie to dzisiaj poleca raczej tworzenie dla usera plików XLSX a nie XLS, bo będzie się wielu osobom wyświetlać komunikat i starej wersji.
komentarz 12 września 2018 przez czujek22 Dyskutant (7,670 p.)
Tak na prawdę może być nawet i XLSX. Dane są w bazie na serwerze ale mam dostęp do serwera. Dotychczas tego nie robiłem, na stronie jest jedynie generowanie CSV ale użytkownikom przeszkadza ten format bo muszą zawsze konwertować sami na XLS.
komentarz 12 września 2018 przez Tomek Sochacki Ekspert (227,510 p.)
z xls też będą mieć problem w nowych office, dlatego wlaśnie polecam xlsx. To jest generanie po prostu spakowany zestaw plików, m.in. różne xml'e itp. Pracuję generalnie w JS, ale do PHP też na pewno są libki do generowania xlsx.
–1 głos
odpowiedź 12 września 2018 przez Igor Gawrys Stary wyjadacz (12,460 p.)
Może file_put_contents("plik","DANE);

Podobne pytania

0 głosów
1 odpowiedź 216 wizyt
pytanie zadane 14 października 2018 w Systemy operacyjne, programy przez Isa123456 Nowicjusz (120 p.)
0 głosów
0 odpowiedzi 197 wizyt
pytanie zadane 30 stycznia 2019 w PHP przez jimi Nowicjusz (220 p.)
0 głosów
1 odpowiedź 309 wizyt
pytanie zadane 18 stycznia 2017 w PHP przez kocur1945 Początkujący (480 p.)

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...