![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 115 Pomógł: 13 Dołączył: 19.06.2011 Skąd: Ruda Śląska Ostrzeżenie: (0%) ![]() ![]() |
Witam. Mam małą zagwozdkę i za bardzo nie wiem jak z tego wyjść. Z programowania jestem początkujący, a w internecie nie znalazłem odpowiedzi na moje pytanie. Mam skrypt, który łączy się z bazą danych mysql, wybiera z niej osoby, które wybrałem (WHERE) i wyświetla ich dane z 2 tablic. Później je sortuje od największej do najmniejszej i umieszcza w pliku txt w takim schemacie:
Kod Rank1: 1. osoba1 Tablica1: 311670 2. osoba2 Tablica1: 246938 (...) Rank2: 1. osoba1 Tablica2: 3428 2. osoba2 Tablica2: 2404 (...) Chcę dodać ten skrypt do crona, żeby co miesiąc go wywoływał i spisywał nowe wartości. Później od nowych wartości dla zapisanych osób odejmował stare i zapisywał te różnice. I tu nasuwa się moje pytanie. Jak to zrobić? Może zapisywać je w innym stylu, do innego formatu? Jak wykonać później tą różnicę? Jeśli potrzebujecie jakiś kawałek kodu to piszcie śmiało. Z góry dzięki za pomoc, Pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 295 Pomógł: 9 Dołączył: 8.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
aż się porsi o jakiś banalny zapis typu csv. W ten sposób kosmicznie to komplikujesz
12;ktos;ktosiowy 13;inny;pan 14;inna;pani Teraz wczytujesz linia po linii robisz explode po ; i masz każdy wiesz w tablicy. dużo prościej |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 115 Pomógł: 13 Dołączył: 19.06.2011 Skąd: Ruda Śląska Ostrzeżenie: (0%) ![]() ![]() |
Dobra, plik zrobiłem z pomocą "INTO OUTFILE" i zrobił się. Niestety nie chce się nadpisywać i przy każdym generowaniu będę musiał zmieniać nazwę pliku, a stare dalej tam pozostaną. Jak usunąć te zbędne?
W dodatku w pliku co się generuje mam krzaki i zapis "bad handshake". Jak sobie z tym poradzić? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 295 Pomógł: 9 Dołączył: 8.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
w jaki sposób generujesz plik ? możesz wkleić funkcję ?
usunięcie pliku możesz wykonać za pomocą funkcji unlink() btw odrobina pracy w formie wpisania tego do wyszukiwarki nie boli (IMG:style_emoticons/default/smile.gif) http://www.google.pl/search?q=php+delete+f...lient=firefox-a |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 115 Pomógł: 13 Dołączył: 19.06.2011 Skąd: Ruda Śląska Ostrzeżenie: (0%) ![]() ![]() |
nie usuwa pliku ze sql'a tylko próbuje z serwera, na którym jest skrypt. Nie działa nawet po wskazaniu ścieżki wraz z portem do mysql (przez który ściągam wygenerowane pliki). Sorry, ale nieogar jestem, na poziomie początkującego początkującego (IMG:style_emoticons/default/tongue.gif) |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 295 Pomógł: 9 Dołączył: 8.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
ale co ty chcesz z sql`a usuwać ?
pofatygowałeś się chociaż do dokumentacji tej metody ? |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 115 Pomógł: 13 Dołączył: 19.06.2011 Skąd: Ruda Śląska Ostrzeżenie: (0%) ![]() ![]() |
Przez tą metodę pliki nie zrobiły mi się na serwerze tylko na sql'u. Mogę je tylko pobrać wklepując adres w przeglądarce.
W necie zobaczyłem taką metodę na zapisywanie .csv więc jej użyłem. Za bardzo się w to nie wczytywałem. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
Tworzenie pliku z danymi...
to odczytu pliku służy funkcja fread Ten post edytował CuteOne 20.06.2011, 00:05:39 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 115 Pomógł: 13 Dołączył: 19.06.2011 Skąd: Ruda Śląska Ostrzeżenie: (0%) ![]() ![]() |
Taki miałem na początku, zapisywał do txt. Tylko nie mówcie, że wystarczyło zmienić rozszerzenie w fopen na csv i metodę printowania wyników (IMG:style_emoticons/default/sciana.gif)
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
czytanie pliku linijka po linijce Ten post edytował CuteOne 20.06.2011, 00:21:40 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Masz tablice, tablice serializuj (serialize), zserializowaną zapisz do pliku (file_put_contents). Później odczytaj unserialize i masz tablice. Po co regexy i pętle tutaj zaprzęgać?
BTW, php 5 wyszło 9 lat temu, funkcje typu file_get_contents czy file_put_contents powinny być na porządku dziennym. |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 115 Pomógł: 13 Dołączył: 19.06.2011 Skąd: Ruda Śląska Ostrzeżenie: (0%) ![]() ![]() |
Na wstępie przepraszam za mały zastój, ale kilka ważniejszych spraw w tym czasie wynikło. Do rzeczy:
Tworzenie pliku z danymi...
to odczytu pliku służy funkcja fread To działa. Ładnie zapisuje do pliku. Cytat( @ 20.06.2011, 10:03:33 ) Masz tablice, tablice serializuj (serialize), zserializowaną zapisz do pliku (file_put_contents). Później odczytaj unserialize i masz tablice. Po co regexy i pętle tutaj zaprzęgać? BTW, php 5 wyszło 9 lat temu, funkcje typu file_get_contents czy file_put_contents powinny być na porządku dziennym. Nie do końca wiem na czym polega serialize. Zrobiłem: I przed NAME są jakieś syfy, w dodatku ja potrzebuję pętle raczej, bo musi mi to układać jak ranking, czyli pozycjami oraz je numerować. Tak jak teraz na to patrzę, to ten zapis jest bez sensu... Jeszcze raz może napiszę: Potrzebuję z tych 3 tablic zrobić 2 rankingi. 1 z tablic 'NAME' i 'SCORE' i zapisać. Później 2 ranking z tablic 'NAME' i 'KILLS' i zapisać. Później te rankingi zapisać (zarchiwizować) przez dodanie do crona, by robił zrzuty każdego 1 dnia miesiąca. <--to sobie zrobię sam, w tym akurat pomocy raczej nie potrzebuję. Dalej przykładowo: Dla każdej osoby ('NAME') odjąć same wartości 'SCORE' i 'KILLS' ze zrzutu z 1.06.2011 i 1.07.2011, by otrzymać PRZYROST, czyli wartość, która przez ten miesiąc przybyła w tych tablicach. Gotowy, ranking (a właściwie 2) dodać do crona, by się wysyłał jako temat na forum phpbb3 (<-- to sobie zrobię sam, w tym akurat pomocy raczej nie potrzebuję. Sam wygląd (układ) rankingu mogę sobie posortować dopiero w ostatnim pliku generującym temat na forum, więc wcześniej on może mieć jakiekolwiek postacie, tylko żeby łatwo było obliczyć każdemu 'NAME' przyrost. Myślę, że nie namieszałem za bardzo. Pozdrawiam. EDYCJA:
Po tym wszystkim, chyba powinienem mieć stworzone tablice nick[], score[], kills[], nie? Czy zrobiłem coś źle, że tych tablic nie ma? Ten post edytował sobol6803 24.06.2011, 00:18:59 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 23:58 |