![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 16.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
Mam tabele w bazie danych, ktora w kazdym rekodrzie ma: date, nazwe artykulu, numer katalogowy. Ogolnie ta tabela to spodziewane dostawy towaru. Ale mniejsza z tym. Problem mam z tym, ze nie wiem jak zrobic zeby na stronie wyswietlalo mi sie cos na ksztalt tego:
:: 4 listopada 2003 r.: - procesor jakis tam (indeks jakis tam) - grafika jakas tam #2 (indeks jakis tam #2) itd... :: 6 listopada 2003 r.: - cos tam #1 (indeks cos tam #1) - cos tam #2 (indeks cos tam #2) itd... Bo normalnie wyswietla mi sie tabela z tymi danymi... A ja nie chce, zeby to bylo w postaci tabeli. Bo przy kazdym towarze jest data i glupio to wyglada. Ogolnie to nie wiem jak zrobic skrypt, ktory po pobraniu tych danych z tabeli, w jakiejs petli sprawdzal by sobie date i grupowal by dane w postac powyzej. Dobrze gdyby artykuly byly od razu posortowane wg nazwy, a daty pojawialy sie w chronologii od najwczesniejszej dostawy do najstarszej... Moze wiecie jak cos takiego zrobic?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Przyda mi sie kazda pomoc... |
|
|
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Nie bardzo rozumiem o co Ci chodzi... to w jakiej postaci mają być wyświetlane dane z bazy to kwestia sfortmatowania w html'u, a nie skryptu.
A co do sortowania, to ma być to sortowane wg. nazwy czy daty w końcu? Sortowanie ogólnie robisz w zapytaniu do bazy: [sql:1:942ff43d06]SELECT * FROM tabela ORDER BY nazwa ASC, data DESC;[/sql:1:942ff43d06] Czyli wyniki będą posortowane w pierwszej kolejności wg nazwy rosnąco, a w drugiej - wg daty malejąco (od najświerzszej do najstarszej). |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 16.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
Ech... To to ja wiem... Ale chodzi mi o to, ze dane wyswietlaja mi sie w formie tabeli, a ja wole raczej tak jak pokazalem. Tylko ze nie wiem jak zrobic (co napisac w php), by te pobrane dane z serwera SQL pokazaly sie tak na stronie.
No nie wiem jak mam to wytlumaczyc... (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Pytajcie! Moze jakos wam wytlumacze... |
|
|
![]()
Post
#4
|
|
Grupa: Zarząd Postów: 2 277 Pomógł: 6 Dołączył: 27.12.2002 Skąd: Wołów/Wrocław ![]() |
Jak sądzę, chodzi o to, by najpierw był nagłówek z datą (dla każdego dnia) a potem wszsytkie wpisy, któe się tego dnia zdarzyły. Mam rację?
Jeśli tak, to rozwiązanie jest bardzo proste. Pobierasz potrzebne dane, sortując je oczywiście względem daty, i zatrzynasz je wyświetlać. Przy pięrwszej iteracji sprawdzasz datę. Jeśli w specjalnej zmiennej na to przygotowanej nie ma tej daty, lub data jest inna, to drukujesz informacje związane z datą, a nasępnie do tej smiennej przypisujesz tą własnie datę. W przeciwnym wypadku pomijasz ten krok, tylko od razu przechodzisz do wyświetlania danych dla danego rekordu (juz oczywisćie bez daty) To jak je wyświetlisz - nie ma już najmniejszego znaczenia, i czy to będzie tabela, czy akapit, czy co Ci tylko przyjdzie do głowy - to już Twój wybór. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 36 Pomógł: 0 Dołączył: 10.10.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat To jak je wyświetlisz - nie ma już najmniejszego znaczenia, i czy to będzie tabela, czy akapit, czy co Ci tylko przyjdzie do głowy - to już Twój wybór.
Krótko mówiąc pobierasz dane, sortujesz i wyświetlasz. Jeśli układ ma być taki jak podajesz, to najlepiej gdybyś tuż po pobraniu danych ułożył sobie odpowiednio sformatowany akapit i zamknął kod php. Przykładowo: [php:1:ae9a3c5765]<?php while ($row= mysql_fetch_array($result)) { $data = row($data); ... $akapit .=" :: data jakas tam :: - coś tam - cos tam "; } ?>[/php:1:ae9a3c5765] Potem już wklejasz gotowy gotowy akapit. [php:1:ae9a3c5765]<?php echo "$akapit"; ?> [/php:1:ae9a3c5765] |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 02:11 |