Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ranking z gotowych tabel
Forum PHP.pl > Forum > Bazy danych > MySQL
indi_all
Witam wszystkich.

Już od paru dni szukam rozwiązania i bardzo wolno mi to idzie. Chodzi o taką rzecz:
Posiadam pliki CSV z wynikami turniejów (miejsce,gracz,turniej,punkty) i potrzebuje z tego zrobić bazę, która będzie sumowała punkty ze wszystkich turniejów i na tej podstawie budowalć tabele rankingową.
Nie jestem orłem z MySQL i proszę was o jakieś nakierowanie jak najlepiej do tego podejść.
Zacząłem od importowania CSVek do oddzielnych tabel i na ich podstawie chciałem powyciągać dane dla każdego gracza ze wszystkich turniejów - posumować pkt i posegregować to wg sumy pkt.

Ale wydaje mi się ze zabrałem się do tego od złej strony ;-///
L00zak
  1. //pobierasz plik csv
  2. if (($handle = @fopen('/home/www.xyz.pl/html/plik.csv', "r")) !== FALSE) {
  3.  
  4. while (($datas = fgetcsv($handle, 1000, ",")) !== FALSE) {
  5. $rowa++;
  6.  
  7. //wypluwa poszczególe wiersze z pliku, a $datas[X] gdzie X to numer kolejnej kolumny w pliku CSV
  8. $miejsce=$datas[1];
  9. $gracz=$datas[2];
  10.  
  11. //itd..
  12. //konkretne pole z csv dodajesz do odpowiedniego pola w sql np. INSERT INTO tabelka ... miejsce=$datas[1]
  13. }
  14. }
bostaf
Ładowanie danych z plików do bazy: LOAD DATA INFILE. Np:
  1. LOAD DATA LOCAL INFILE 'C:/moje_dane.csv'
  2. INTO TABLE nazwa_bazy.nazwa_tabeli
  3. FIELDS TERMINATED BY ';' -- separator pól w pliku csv, sprawdź dla pewności otwierając plik csv w prostym edytorze tekstowym
  4. ENCLOSED BY '"' -- hmmm "zamykacz" :) wartości pól, fsensie niektóre (bo to nie reguła) dane w polu są otoczone cudzysłowami, sprawdź czy rzeczywiście podwójnymi
  5. LINES TERMINATED BY '\r\n' -- znak końca wiersza, tak się go definiuje w Windows
  6. (nazwa_kolumny, nazwa_kolumny, ...); -- z nazwami kolumn też pokombinuj, bo różnie bywa.
  7. -- ja jak robiłem to ostatnio, to musiałem stworzyć tabelę i zdefiniować wszystkie kolumny
  8. -- żeby były zgodne z tym co w csv. Nie wiem czy to reguła.
  9. -- Nie będę się wymądrzał bo 2 razy w życiu tego używałem
  10. -- nakombinowałem się z tymi opcjami, ale cel osiągnąłem
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.