Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Rozkład jazdy, Jak?
tomB
post 29.11.2008, 01:52:23
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 29.11.2008

Ostrzeżenie: (0%)
-----


Witam wszystkich,

Buduje prywatny portal o mojej małej gminie. Chciałbym również zamieścić rozkłady jazdy, tylko jak...?

Mam rozkłady wszystkich linii w plikach exel-a. Czy da się je jakoś wyeksportować do MYSQL?
Plik składa się z numeru linii, trasy, przystanków, godzin odjazdów, danych przewoźnika i okresie obowiązywania. Chciałbym aby plik PHP wyświetlił dane o odjazdach z danego przystanku, po kliknięciu w godzinę odjazdu wyświetlił informacje o kursie.

Bardzo proszę o pomoc,
Pozdrawiam serdecznie smile.gif

Ten post edytował tomB 29.11.2008, 01:57:54
Go to the top of the page
+Quote Post
sowiq
post 29.11.2008, 04:38:08
Post #2





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Da się i to względnie małym nakładem pracy.

Ja bym Ci proponował zapisać najpierw ten plik excela jako XML, albo CSV. A to dlatego, że te 'excelowskie' pliki .xls są zapisane w postaci binarnej i będzie je trudniej odczytać.

Jak już będziesz miał taki plik csv, albo xml, to wystarczy napisać prosty parser, który odczyta odpowiednie godziny i numery linii i zapisze to w bazie. Plusy są takie, że jak rozkład się zmieni, to wystarczy tylko wrzucić nowszą wersję pliku. Minusy - trzeba napisać parser smile.gif
Go to the top of the page
+Quote Post
tomB
post 29.11.2008, 12:37:37
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 29.11.2008

Ostrzeżenie: (0%)
-----


Które funkcje w paserze użyć. Wątpię żeby mi się udało ale warto spróbować smile.gif
Go to the top of the page
+Quote Post
erix
post 29.11.2008, 12:46:26
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




fgetcsv" title="Zobacz w manualu PHP" target="_manual. winksmiley.jpg

Dużo większe możliwości ma klasa parse csv: http://code.google.com/p/parsecsv-for-php/ winksmiley.jpg

Ten post edytował erix 29.11.2008, 12:46:37


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
tomB
post 30.11.2008, 18:48:05
Post #5





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 29.11.2008

Ostrzeżenie: (0%)
-----


OK to zabieram się do testów,
Jak na razie dziękuje - z pewnością będą jeszcze pytania smile.gif

Jednak postawiłem na PHP&MySQL (z CSV nie dałem sobie rady sad.gif)

Moja tabela pt "rj" (zamiast tego będą numery linii) wygląda następująco:
http://s6.zapodaj.net/images/45601015.jpg

Co sądzicie o takim układzie, co dodać, co zmienić? Chciałbym aby w efekcie końcowym rozkład wyglądał następująco:
- linia.php?linia=xxx - wyświetlenie numeru linii, trasy, trasy przystankowej, daty obowiązywania rozkładu;
- rozklad.php?linia=xxx&przystanek=x&kierunek=x - wyświetlenie listy przystanków dla danego kierunku, wyświetlenie rozkładu z danego przystanku (z podziałem na robocze, soboty, niedziele, wielkanoc, etc), daty obowiązywania. Istnieją niestety również kursy specjalne (omijające jakieś przystanki, kursujące tylko we wtorki etc);
- kurs.php?linia=xxx&przystanek=x&kierunek=x&kurs=xx - wyświetlenie pojedynczego kursu, jego trasy, oraz zaznaczenie z którego przystanku odjazd (poprzednie przystanki z jakimś krzyżykiem, strzałeczką czy czymś;
- przystanek.php?przyst=xxxx - wyświetlenie numerów linii wraz z linkiem do rozkładu (np przystanku Kraków Pl. Wszystkich Świętych - wyświetlenie numerów linii i kierunków a po kliknięciu przejście do rozkładu danej linii z tego właśnie przystanku). Bądź wyświetlenie rozkładów wszystkich linii w przystanek.pjhp?xxxx;
- wyszukiwarka.php - wiadomo, skąd, dokąd, o której godzinie.
Tak więc jakie tabele powinny się znaleźć, jak to wszystko zoptymalizować żeby potem było łatwo pracować?

1. Jak zmienić
  1. <?php
  2. $zapytanie="SELECT * FROM rj";
  3. ?>
by 'rj' było zmienne (linia=xxx)?
2. Mam kod:
  1. <?php
  2. //pobranie listy przystanków + link do wyświetlenia odjazdów
  3. $zapytanie="SELECT * FROM rj";
  4. $wynik = mysql_query($zapytanie);
  5. while($wiersz = mysql_fetch_array($wynik))
  6. {
  7. echo '<a href=przystanek.php?id=' . $wiersz['id'] . '>' . $wiersz['przystanek'] . '</a><br>';
  8. }
  9. ?>
  10.  
  11.  
  12. <?php
  13. //wyświetlenie odjazdów z danego przystanku
  14. $q=mysql_query("SELECT * FROM rj WHERE id='" . $_GET['id'] . "'");
  15. while($r=mysql_fetch_array($q)){
  16. echo $r['kurs1'];
  17. echo ' | ';
  18. echo $r['kurs2'];
  19. echo ' | ';
  20. echo $r['kurs3'];
  21. //etc
  22. }
  23. ?>

Jak zrobić by kurs1, kurs2 etc były linkami i jak wyświetlić pobrane dane w kurs.php /lista przystanków, godziny odjazdów dla wybranego kursu z zaznaczeniem z którego przystanku odjazd (przykład poniżej)
wyświetlenie kurs.php po kliknięciu danego kursu z przystanku Smolki
Kod
# Św. Wawrzyńca 8:30 //przyciemnione
# Plac Bohaterów Getta 8:34 //przyciemnione
# Korona 8:36 //przyciemnione
# Smolki 8:38 //pogrubione
# Rondo Matecznego 8:40
# Rzemieślnicza 8:42


Pozdrawiam serdecznie
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 07:57