Autor | Zpráva | ||
---|---|---|---|
kopi Profil |
#1 · Zasláno: 12. 3. 2019, 14:40:05
Zdravím,
potřeboval bych poradit nebo nasměrovat na nějaký tutoriál. Jak udělat upload xls souboru se seznamem lidí a při uploadu rozpracovat tak, že co řádek v excelu se uloží jako řádek do databáze? V podstatě přesně to, co mají mailinkové softwary jako třeba Mailchimp. Tak jak to má mailchimp by bylo ještě ideálnější - zkopíruju xls soubor a v mailchimpu ho vložím do předem připravené tabulky a ono se to samo rozhází tak, že co sloupec v xls to sloupec v mailchimpu a pak to jen uložit. všude jsem našel jen import před myadmin. Mohl by mě někdo alespon nasměrovat, jak se to dělá? děkuji. |
||
Hando Profil |
#2 · Zasláno: 12. 3. 2019, 14:46:38
Ahoj.
Na čtení xls souborů můžeš použít např. phpspreadsheet.readthedocs.io/en/latest. Vytáhneš si z toho sešitu data a následně si je už zpracuješ v php - např. uložíš do databáze atd. Tutoriál na to asi ani není potřeba, víceméně je to procházení pole apd., prostě základní operace, které se v php provádějí. |
||
kopi Profil |
#3 · Zasláno: 13. 3. 2019, 14:02:04
Hando:
díky, koukal jsem na to a určitě to zkusím. Ale jestli to chápu dobře, funguje to tak, že nahraju xls soubor a z něj to pak zpracuju? Existuje možnost, že budu mít na stránce předpřipravenou nějakou tabulku (jako v mailchimpu při importu konktatků) a do ní to prostě jen z excelu zkopíruju? Aniž bych musel uploadovat xls soubor? |
||
Keeehi Profil |
#4 · Zasláno: 13. 3. 2019, 14:29:20
Tak jestli ti jde jen o vstup, pak ti stačí jen obyčejná textarea. Když tam nakopíruješ část tabulky z Excelu tak jednotlivé hodnoty buněk jsou oddělené tabulátorem a řádky jsou snad jasné.
|
||
kopi Profil |
#5 · Zasláno: 13. 3. 2019, 19:20:30
Keeehi:
to jsem netušil, že k tomu stačí textearea. Udělal jsem si funkci na rozdělení podle řádků. $seznam = preg_split("/\r\n|[\r\n]/", $_POST['import']); foreach ($seznam as $key => $row) { echo "$row<br/>"; } Jak to ještě rozdělím podle těch tabulátorů, abych to mohl vložit do db? |
||
Keeehi Profil |
Klidně úplně stejně jako rozdělení na řádky
$seznam = preg_split("/\r\n|[\r\n]/", $_POST['import']); foreach ($seznam as $row) { $bunky = preg_split("/\t/", $row); foreach ($bunky as $bunka) { echo "$bunka "; } echo "<br>"; } |
||
kopi Profil |
#7 · Zasláno: 13. 3. 2019, 23:21:30
Keeehi:
super, děkuju. měl jsem to tak, akorát jsem nevěděl znak pro tabulátor \t. Ještě jednou díky |
||
Časová prodleva: 6 let
|
0