![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 29.04.2003 Skąd: Stargard Szczeciński Ostrzeżenie: (0%) ![]() ![]() |
Mam do przetworzenia, celem wrzucenia do bazy danych statystyki z meczów koszykówki.
Wrzucać je będę formularzem. Dane będą miały następujący wygląd: 4 Tomasz Wilczewski 00:00 0/0 - 0/0 - 0/0 - 0 0 0 0 0 0 0 0 0 5 Rafał Partyka 32:02 1/3 33% 4/8 50% 2/5 40% 0 1 1 1 3 2 2 0 16 6 Stanisław Prus 33:23 9/12 75% 0/1 0% 3/3 100% 1 3 4 5 2 2 1 1 21 8 Dariusz Puncewicz 19:43 2/8 25% 2/4 50% 2/4 50% 1 1 2 2 2 4 2 0 12 9 Paweł Mazurek 00:00 0/0 - 0/0 - 0/0 - 0 0 0 0 0 0 0 0 0 10 Robert Klocek 00:00 0/0 - 0/0 - 0/0 - 0 0 0 0 0 0 0 0 0 11 Piotr Dąbrowski 00:44 0/0 - 0/0 - 0/0 - 0 0 0 0 0 0 0 0 0 12 Adam Lisewski 30:49 1/3 33% 0/0 - 3/4 75% 1 3 4 2 5 3 0 2 5 13 Tomasz Wojdyła 22:31 3/9 33% 0/1 0% 0/0 - 2 4 6 1 3 0 1 0 6 14 Marcin Malczyk 35:22 1/3 33% 1/3 33% 1/2 50% 4 2 6 2 5 0 2 0 6 15 Tomasz Andrzejewski 25:23 2/7 28% 0/1 0% 2/2 100% 1 2 3 1 2 1 0 0 6 20 Marcin Kowalewski 00:00 0/0 - 0/0 - 0/0 - 0 0 0 0 0 0 0 0 0 i teraz problem, że nie wiem jak to porozdzielać, to po pierwsze, a po drugie są jeszcze różne warunki, że np. jeśli zawodnik nie wykonał rzutu to zamiast 0% jest -. Jak to porozdzielać prawidłowo, żeby później można bez problemu dodać do bazy danych? -------------------- gg 1142714
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 045 Pomógł: 5 Dołączył: 8.11.2004 Skąd: trójmiasto Ostrzeżenie: (0%) ![]() ![]() |
można to wrzucić do pliku,
a potem ten plik otworzyć jako csv rodzielany spacjami [MANUAL] http://pl2.php.net/manual/pl/function.fgetcsv.php Ten post edytował php programmer 2.09.2005, 10:24:21 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 29.04.2003 Skąd: Stargard Szczeciński Ostrzeżenie: (0%) ![]() ![]() |
tak tylko, że tych statystyk do wklejenia będzie dużo więcej, więc najlepsze, żeby php to sam rozdzialał i wstawiał później do bazy, w przeciwnym wypadku będzie babranie się z plikami jeszcze.
Ten post edytował Gumiak 2.09.2005, 10:57:31 -------------------- gg 1142714
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Dobrze by by było gdybys poszczególne elementy oddzielał np. średnikiem ;
Spacje masz np. w nazwiskach, ale w sumie i to nie problem jesli zawsze będzie nazwisko i imie. 1)wczytaj plik funkcją file(). Zwróci ci ona tablicę, której elementy to kolejne linijki z piku 2)Mając już tabele na każdeym jej elemencie (wierszu) użyj explode(';', $tabela[$i]), gdzie $i t kolejne indexy tabeli 3) w wyniku każdego explode otrzymasz tablicę której kazdy element to kolejne Twoje wartości 4) przetwarza se te wartosci z uwzglednieniem swoich warunków 0% = - 5) mając te dane budujesz i wykonujesz inserta do mysql To taki pseudo kod. Na forum bylo wiele juz takich przykladów. MOżesz poszukać jesli to ci nie wystarcza -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 29.04.2003 Skąd: Stargard Szczeciński Ostrzeżenie: (0%) ![]() ![]() |
oodzielanie średnikiem nie jest za bardzo możliwe, bo chodzi, żeby danych nie trzeba było modyfikować, bo jesli będzie do wklejenia np. 15 meczów na raz czyli 30 druzyn, to będzie to zbyt czasochłonne.
Na razie mam coś takiego, ale nie za bardzo to mi działa. Z formularza wysyła wszystko ale $zawodnik drukuje, a nie rozdziela prawidłowo na poszczególne elementy.
Ten post edytował Gumiak 2.09.2005, 11:12:54 -------------------- gg 1142714
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
A te statystyki nie moga byc w inny sposob przytgotowywane do wklejenia?
Skad je pobierasz? Arkusz kalkulacyjny? PLik textowy? -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 29.04.2003 Skąd: Stargard Szczeciński Ostrzeżenie: (0%) ![]() ![]() |
nie bardzo bo jest ich dużo i to byłoby najwygodniejsze rozwiązanie. wiem, ze niektore portale działają w ten sposob.
a są pobierane wprost ze strony www. -------------------- gg 1142714
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 446 Pomógł: 0 Dołączył: 5.03.2005 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
a ja mam takie pytanie te wyniki sa jakos wysylane ze strony do ciebie czy masz je odczytac z kodu zrodlowego. jezeli to drugie wyjscuie to musisz poprosty wyrazeniami regularnymi powycinac w kodzie co cie interesuje troche bedziesz miec przy tym zabawy
![]() |
|
|
![]()
Post
#9
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Te dane sa ze strony www?
A sa chociaz jakos strukturalnie poukladane tak zeby mozna ten fragment htmla potraktowac parserem XMLa i wyciagnac potrzebne dane? -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 2.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
A ja mysle ze najlatwiej bedzie to zrobic przez uzycie funkcji explode.
Np cos takiego:
![]() poprawiam --- nospor Powiedz dokladnie(ze szczegolami) jak to ma dzialac... co i skad ma pobierac.. to moze napisze ten skrypt dla Ciebie... Pozdrawiam |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 29.04.2003 Skąd: Stargard Szczeciński Ostrzeżenie: (0%) ![]() ![]() |
Więc tak. Widziałem na jednym portalu, że robią to tak:
wchodzą na strone: np. http://www.spojnia.com/spojnia_basket.htm kopiują jedną drużynę (bez miesania w plikach ![]() Więc to po prostu dane będą z roznych stron kopiowane i wklejane do formularza. Ten post edytował Gumiak 3.09.2005, 12:24:42 -------------------- gg 1142714
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 2.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
Dobra... Dalej nie napisales szczegolow.... wiec napisalem Ci prosty skrypcik jako przyklad jak to mozna zastosowac...
Jak skrypt sie komus nie podoba to niech nie patrzy... doslownie 3 min go pisalem... Jest bardzo prosty.. latwo w nim wprowadzac zmiany... Prawdopodobnie chcesz te dane wrzucic do bazy... albo do jakiegos pliku(np: tabela12.htm) to poprostu dopiszesz sobie kawalek kodu, ktory to robi. Ja Ci tylko pokazalem przyklad jak to mozna zrobic. Wstawilem razem z HTMLem zebys mogl latwo podmienic go swoim... Skopiuj najzwyczajniej caly ponizszy fragment kodu do jakiegos pliczku *.php i bedzie dzialac.
Pozdrawiam Ten post edytował krz2006 3.09.2005, 13:30:29 |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 29.04.2003 Skąd: Stargard Szczeciński Ostrzeżenie: (0%) ![]() ![]() |
o.k. działa, tyle, że ja potrzebowałbym troszkę innego rozwiązania.
tutaj rozdziela tylko na podstawie spacji drukuje jak jest, a ja potrzebowałbym rozdzielić wszystko na poszczególne elementy np.: 1/3 zeby było 1 3 powiedzmy ze po przetworzeniu tym formularzem otrzymuje wartości 4 - Piotr Nizioł 30:53 1/3 33% 1/2 50% 4/4 100% 0 1 1 5 3 3 1 0 i teraz jak odwołać się do poszczególnej wartości (np. procentu rzutów wolnych czyli tutaj 100%) P.s. przepraszam za bełkot, ale ciężko mi to wytłumaczyć ![]() ![]() -------------------- gg 1142714
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 23:22 |