Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: odczyt pliku xls i zapis go w bazie dzieki php
Forum PHP.pl > Forum > PHP
kosmic
witam...
troche szukałem tego zagadnienia no i co nie co znalazłem, ale.. no właśnie ale... sad.gif
więc w zasadzie samo wyświetlenie to nie problem...
ale ja mam trochę bardziej zawiły problem...

chcę dane z pliku xls zapisać do bazy sql na serwerze (w zasadzie nadpisywać je - aktualizować) wszystkie na raz, a nie wprowadzać ręcznie setki rekordów sad.gif bo to chyba dzisiaj było by samobójstwo

otóż chodzi o to że mam plik (dane.xls):
-------------------------------------
|lp|Nazwa |Dane 1 |Dane 2 |
|1 |Ala1 |50 |24,4 |
|2 |Ala2 |37 |98,28 |
|3 |Ala3 |25,62 |27 |
|. |... |.... |... |
-------------------------------------

no i o ile sam odczyt i wyświetlenie tych informacji gdzieś znalazłem
o tyle chodzi mi o to aby te dane zapisywać do bazy sql !

no i tu jest problem, gdyż ja jestem jeszcze leszczem i kombinuję ciagle szukam i staram sie cos wymyslec, ale nie poradzę sobie sam bez fachowej pomocy..

stąd prośba do was... aby pomóc w napisaniu skruptu który bedzie własnie odczytywał wskazany przezemnie plik i zapisywał dane w bazie Mysql na serwerze....

chodzi o to że mój program generuje pliki xls i wzasadzie to jest najprostsza wersja tego pliku, która mnie w zupełnosci wystarczy aby uzyskac 3 istotne dla mnie informacje, tylko teraz je trzeba zapisywac w bazie..
ponieważ chce mieć je w sql i miec potem dostep do tych danych przez www... a wpisywanie powiedzmy 400 rekordów recznie, nawet co tydzien to chyba obłęd sad.gif((

no i tu nie stety ja sie wykładam sad.gif
HELP ME
Fifi209
A jakbyś przynajmniej pokazał jak wygląda ten plik? tzn. chodzi mi o to czy to jest czysty tekst czy co?
Zrobiłeś już coś sam? Zdajesz sobie sprawę, że tutaj gotowca nie dostaniesz?
kosmic
Cytat(fifi209 @ 29.11.2009, 10:35:19 ) *
A jakbyś przynajmniej pokazał jak wygląda ten plik? tzn. chodzi mi o to czy to jest czysty tekst czy co?
Zrobiłeś już coś sam? Zdajesz sobie sprawę, że tutaj gotowca nie dostaniesz?


a może jednak dostane gotowca.. questionmark.gif nie o to chodzi
a czy Ty zdajesz sobie sprawę że szukam pomocy, może jakiś części kodu oraz zagadnień w jaki sposób sie wogóle za to zabrać questionmark.gif

a plik to po prostu kilkaset rekordów zawierających 4-5 kolumn: lp nazwę wartość1 wartość2 wartość3
prostu z max 5 kolumnami i x ilością wierszy!

chodzi o to że robię panel admina na stronie www i potrzebuje dane z mojej bazy programowej...
przecież nie będę co kilka dni wprowadzał nowe dane (zmieniał na aktualne) ręcznie bo to bezsens sad.gif
a potrzebuje dostęp do kilku danych przez neta...

no i o ile z panelem i wogóle resztą w tym zakresie to raczej sobie poradze o tyle nie wiem kompletnie jak zrobic ten temat z danymy, tak abym mógł co tydzien aktualizować sobie baze danych, a potem na stronie już sobie korzystać z tych danych sad.gif
Fifi209
Cytat(kosmic @ 29.11.2009, 13:12:05 ) *
a plik to po prostu kilkaset rekordów zawierających 4-5 kolumn: lp nazwę wartość1 wartość2 wartość3
prostu z max 5 kolumnami i x ilością wierszy!

Czytanie ze zrozumieniem się kłania, skąd mamy wiedzieć jak z pliku xxx wyciągnąć x,y,z etc. ?
MUSIMY WIEDZIEĆ JAK TEN PLIK WYGLĄDA!
Może to jest na zasadzie:

x|cos|cos3;

A może:

x[]asdf[]asdf;

albo:

ui;sdfsdf;sfds\n\r

Jak mamy odczytać jakieś dane to musimy wiedzieć w jaki sposób się za to zabrać, jak nie wiemy jak wygląda plik to jak mamy Ci pomóc?
kosmic
Cytat
a plik to po prostu kilkaset rekordów zawierających 4-5 kolumn: lp nazwę wartość1 wartość2 wartość3
prostu z max 5 kolumnami i x ilością wierszy!


Cytat
Czytanie ze zrozumieniem się kłania, skąd mamy wiedzieć jak z pliku xxx wyciągnąć x,y,z etc. ?
MUSIMY WIEDZIEĆ JAK TEN PLIK WYGLĄDA!


u mnie wszytko ok ze zrozumieniem, ale chyba kolega cos z wyobraznia ma nie tak!

no ale niewazne...
taki plik i te dane potrzebuje miec w bazie... aktualizowac je co jakis czas bo musze na nich pracowac przez www

no i jetem leszcz co do tego jak to rozwiazac wiec jesli mozesz pomoc bylo by milo
potrzebuje potem operowac tymi danymi w panelu admina na stronie
Fifi209
Nie wiem czy dobrze widzę, ale to chyba jest w Excelu?
http://www.internetmaker.pl/artykul/3133,1...cela_w_php.html
Istari
Witaj,

można jeszcze bardziej uprościć, zapisując .xls do csv, zostaje Ci zwykłe parsowanie i tyle, poza tym cały czas masz przy okazji robioną kopię Twojej bazy excel( w csv) między ostatnimi zmianami a update na serwer.
kosmic
Cytat(fifi209 @ 29.11.2009, 15:20:58 ) *
<br>Nie wiem czy dobrze widzę, ale to chyba jest w Excelu? <br><a href="http://www.internetmaker.pl/artykul/3133,1,zapis_i_odczyt_arkuszy_kalkulacyjnych_excela_w_php.html" target="_blank">http://www.internetmaker.pl/artykul/3133,1...cela_w_php.html</a><br>
<br><br>tak excel - na samym początku pierwszego postu jest napisane że chodzi o plik "xls"<br>a co do linka to przeglądałem go i staram sie właśnie cos zrobić z tego... ale nie bardzo kumam i nie wiem jak sie z tym uporać sad.gif<br><br><br>

Cytat(Istari @ 29.11.2009, 15:27:13 ) *
Witaj,

można jeszcze bardziej uprościć, zapisując .xls do csv, zostaje Ci zwykłe parsowanie i tyle, poza tym cały czas masz przy okazji robioną kopię Twojej bazy excel( w csv) między ostatnimi zmianami a update na serwer.


no próbowałem właśnie w ten sposób... ale nie wiem o co ci chodzi z tym parsowaniem questionmark.gif
jk widac mój plik z danymi w zasadzie bedzie banalny, ale mimo to po zapisie go do .csv sql nie chciało mi go importowac bo odrazu wywalił jakis bład sad.gif

hmmmmmm
co do rozwiązania z csv to własnie przetestowałem i ogólnie jest ok i nawet jakos można to zrobić, ale....
no właśnie, poprzez import w sql nie może to być bo za każdym razem trzeba usunąć aktualne rekordy i importować nowe, a co najwazniejsze musiałbym to robić i w zasadzie tyle...

a mi chodzi o ta aktualizacja danych bedzię obsługiwana przez 3 osoby jakby z różnych miejsc...

no i ja bym to widział tak, że loguje sie do panelu, wybieram plik i klikam aktualizuj... no i dane te są nadpisywane w bazie sql, z której odrazu juz moge pobierac te informacje...

czyli raczej z uwzglednieniem php to musi być sad.gif
no i dodam że nie vardzo kumam obiektowe php... wiec mile widziana pomoc w zwykłym php sad.gif
Fifi209
Przykładowo zapisany plik, w podanym przez kolegę formacie:

Kod
id;name;name2
1;a;aa
2;b;bb
3;c;cc
4;d;dd
5;e;ee
6;f;ff
7;g;gg
8;h;hh
9;i;ii
10;j;jj


Wczytujesz taki plik do zmiennej poprzez file
Potem explode
Pozwól, że zademonstruję ;]

  1. <?php
  2.  
  3. $file = file('test.csv');
  4.  
  5. for ($i=1; $i < count($file); $i++) {
  6. list($id, $name, $name2) = explode(';', $file[$i]);
  7. echo 'INSERT INTO `tabela` VALUES('.$id.', "'.$name.'", "'.trim($name2).'")<br/>';
  8. }
  9.  
  10. ?>


To jest oczywiście przykład.
kosmic
no i chyba o to mniej wiecej chodziło...
teraz bede testował i rozwijał to....

ale narazie wielkie dzieki smile.gif

juz zapunktowałem biggrin.gif
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.