Skocz do zawartości
Zaloguj się, aby obserwować  
LucKy_skiLL

Dane z pliku do tabeli w innym pliku - jak to zrobić ?

Polecane posty

Mam plik stats.txt w którym zapisuje się IP, Host i data wejścia na stronę, zrobiłem sobie w paneli admina ładną tabelkę, i teraz mam pytanie, jak te informacje z pliku stats.txt wdrążyć do mojej tabeli ?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość bolek10

To nie lepiej odrazu do tabeli? Podaj swój plik który wysyła dane do .txt, strukture tabeli to napisze Ci skrypcik.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Tutaj jest skrypt który, ale trzeba go umieścić w pliku index.php

 

 

<?php
$data = date("d.m.Y"); //ustalenie zmiennej dla daty
$godzina = date("H:i:s"); //ustalenie zmiennej dla godziny
$ip = $_SERVER["REMOTE_ADDR"]; //ustalenie zmiennej dla adresu ip użytkownika
$serwer = gethostbyaddr($ip); //ustalenie zmiennej dla hostu użytkownika
$fp=fopen("stats.txt", "a"); //otwarcie pliku, ustalenie trybu otwarcia pliku oraz ustalenie do którego pliku będą zapisywane logi.
flock($fp, 2); //ustawienie parametru funkcji flock, ten parametr nie dopuszcza do zapisu dwóch logów na raz.
fwrite($fp, $ip.", "); // rozpoczęcie zapisu logu w pliku, na samym początku będzie adres ip użytkownika
fwrite($fp, $serwer." - "); // host użytkownika
fwrite($fp, $data.", godz. "); // data wejścia
fwrite($fp, $godzina."\r\n"); // godzina wejścia przeniesienie do następnej lini w celu czytelnego zapisu następnych logów
flock($fp, 3); //zwolnienie blokady zapisu do pliku
fclose($fp); // zamknięcie pliku
?>

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

zasadniczo są 2 rozwiązania...od razu w pliku stats.txt zapisywać dane w formie wiersza tabeli..później go tylko odczytać i wyświetlić

 

lub

 

zapisywać jak jest, ale odczytywac stats.txt po linijce i użyć wyrażeń regularnych do "rozdzielenia" informacji które później wyświetlisz w tabeli...

 

dla ułatwienia podam Ci na szybko pisane wyrażenie regularne dla wydobycia tych informacji:

(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}),\s(.+)\s\-\s([0-9]+\.[0-9]+\.[0-9]+),\sgodz\.\s(\d{1,2}:\d{1,2}:\d{1,2})

 

wiem ze nie jest ono zoptymalizowane ale..przy okazji testowałem swoją pamięc smile.png

Edytowano przez pietrovek (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

w jaki sposób wczytasz plik to już Twoja inwencja smile.png

 

w tym przypadku później, podanym wcześniej wzorcem poprzez funkcję preg_match "przeszukaj" każdy element tablicy (linię), w następnej (parametr funkcji) tablicy będziesz miał wybrane dane z tego ciągu które będziesz mógł umieśic w tabeli.

 

pomocne może okazać się: Postawy wyrażeń regularnych - rozdział "Grupy" i przykład w nim zawarty...

Edytowano przez pietrovek (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Albo możesz zapisywać do pliku oddzielając dane średnikiem i będziesz miał plik csv, który potem możesz czytać funkcją fgetcsv - czyta po wiersze parsując csv na tablicę.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

Zaloguj się, aby obserwować  

×