Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Skrypt php dodający wpisy do bazy danych z csv
Forum PHP.pl > Forum > PHP
AuxEnfers
Witam,
Chciałbym importować dane do bazy danych z pliku csv. Mam dostęp do phpmyadmin, ale nie jest to import bezpośredni, dlatego potrzebuję skryptu, który wydaje mi się niezbyt prosty (przy moich umiejętnościach).
Będe wdzięczny za każdą pomoc!
Oto założenia:
Chciałbym dodawać dane z pliku CSV do bazy danych, ale tak:
- dodać kolumnę do tabeli "sprzedaż" o nazwie $today (aktualna data w formacie dmy)
- wczytujemy plik CSV
- jeśli użytkownik z 2 kolumny, 2 wiersza istnieje to zaktualizować w tabeli "sprzedaż" jego wartość kolumny $today o wartość z 2 wiersza, 3 kolumny
- jeśli użytkownik z 2 koluny, 2 wiersza nie istnieje to dodać go do tabeli "użytkownicy" i zaktualizować w tabeli "sprzedaż" jego wartość kolumny $today o wartość z 2 wiersza, 3 kolumny
-tak aż do 21 wiersza, ale cały czas operując tylko na 2 i 3 kolumnie (plik csv zawiera więcej komórek, ale nie chcemy tego używać)

dodatkowo przed dodaniem nazwy użytownika zastąpić napis "
Research items for this seller from this category
Research all items for this seller
Research this seller's top titles" pustym znakiem (usunąć taki wpis, bo w każdej komórce 2 kolumny oprócz nazwy użytkownika istnieje taki zbędny dopisek)

taki proces do tej samej bazy danych (tabeli) z 5 plikami numerowanymi od opis_1.csv do opis_5.csv
podział kolumny ";" (średnikiem), a wiersza "/n" (nowa linia).
Mayka
Ja bym to zrobił tak, pobierasz csv do tabeli (fgetcsv) i sprawdzasz pozniej ile jest elementów w poszczególnym wierszu, i w zależności od wyniku robisz taki albo inny wpis w to miejsce.
AuxEnfers
Jeśli dobrze Cię rozumiem, to nie do końca tak, bo plik csv zawsze będzie miał 21 wierszy, czasem powtórzy się wartość komórki i wystarczy zrobić update wartości w kolumnie mysql, a czesem trzeba dodać nową.
Mayka
No dobrze ale to w dalszym ciągu niewiem w czym problem ?
Robisz 2 pętelki z jednym licznikiem żeby zgadzał sie wiersz z kolumną i sprawdzasz czy taki wpis istnieje jeśli tak to aktualizujesz w tabeli wpis "sprzedaż"
jeżeli nie istnieje to dodajesz..
AuxEnfers
Rozumiem, to już spore naprowadzenie.
O cały kod nie proszę bo domyślam się, że to za dużo pracy ale jakbyś mógł napisać fragment który odczytuje i sprawdza dane lub chociaz wymienić funkcje i pętle które najlepiej byłoby użyć, byłbym bardzo wdzięczny smile.gif
Bo nie ukrywam, że jestem zielony a jest mi to pilnie potrzebne...
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.