![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 32 Pomógł: 0 Dołączył: 31.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
Witam, tworzę portal, na którym mam zawodników z różnych krajów. Podczas dodawania ich do bazy wybieram z pola "select" z jakiego kraju jest dany pan, w wyniku czego w bazie otrzymuję zapis, np. Kraj="Stany Zjednoczone". Jak zrobić, aby przy wyświetlaniu danego zawodnika, przy jego nazwisku pojawiała się odpowiednia flaga, np. dla Stanów Zjednoczonych mam flagę zapisaną jako "images/flags/1.jpg".
Proszę o pomoc i pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 377 Pomógł: 9 Dołączył: 2.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
Musisz zrobić np.: jakąś instrukcję switch lub if i wtedy
itd, lub od razu przy dodawaniu do bazy danych dodawać id flagi i wtedy: images/flags/".$flaga.".jpg Pozdrawiam. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 006 Pomógł: 111 Dołączył: 23.07.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Powodzenia przy switchu jak będzie np 100 flag (IMG:style_emoticons/default/smile.gif)
Zapisz sobie do zawodnika z jakiego kraju podochodzi albo ID flagi dla niego, a potem wybieraj to z bazy podstawiając pod obrazek. Np: User: IMIE: Gienek KRAJ: Polska FLAGA_ID: 3 Gdzie id flagi to nazwa pliku graficznego. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 377 Pomógł: 9 Dołączył: 2.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ewentualnie można też zrobić bazę danych tych wszystkich państw i flag..
typu: id(int)|name(str)|flaga(int) i później zapytanie robić WHERE name = $user['flaga']... Pozdrawiam.. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 273 Pomógł: 52 Dołączył: 3.02.2013 Skąd: Przemyśl Ostrzeżenie: (0%) ![]() ![]() |
Moim skromnym zdaniem pomysł drugi jest najlepszy.
I także polecałbym to rozwiązanie |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Proponuje nazwy trzymać w standardzie ISO (max 3 znaki) typu PL, US itp.
Znacznie lepiej to wygląda, kod kraju idealnie pasuje do wstawienia w ALT bądź TITLE. Alternatywnie lista krajów (nazwa pliku, id, nazwa kraju) - ale mało elastyczne i nie potrzebne tabele w bazie. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 32 Pomógł: 0 Dołączył: 31.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
Witam ponownie, zdecydowałem się na sposób z przekazywanie ID flagi, jednak tutaj rodzi się moje kolejne pytanie, mianowicie:
W formularza do dodawania zawodników, mam pole:
Plik panstwa.php:
Uproszczony skrypt zapisu do bazy:
Teraz moje pytanie brzmi, jak przesłać przez formularz nie tylko wybrany kraj, ale również jego numer (id), czyli jak podejrzewam parametr "$i". Próbowałem przez ukrytego inputa, ale niestety nic z tego. Liczę na pomoc i z góry dziękuję. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 273 Pomógł: 52 Dołączył: 3.02.2013 Skąd: Przemyśl Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 377 Pomógł: 9 Dołączył: 2.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
@mstraczkowski - Kolega chce chyba przesłać w Poście od razu ID flagi oraz nazwę państwa, a teraz wyślę tylko ID..
Zrobiłem coś takiego, pewnie można to zrobić inaczej, ale moja opcja wydaje się również dobra.. A wiec tak:
I później odbieranie:
Pozdrawiam. Ten post edytował Giluś 14.02.2013, 14:19:33 |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 273 Pomógł: 52 Dołączył: 3.02.2013 Skąd: Przemyśl Ostrzeżenie: (0%) ![]() ![]() |
@up Mam nadzieję, że wiesz o tym że to rozwiązanie nie jest dobrym podejściem i jest mocno naciągane "aby tylko działało" ? (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 32 Pomógł: 0 Dołączył: 31.01.2010 Ostrzeżenie: (10%) ![]() ![]() |
Dzięki za pomysły.
Giluś ma rację. Chciałbym wysłać nazwę kraju i zapisać dane do tabeli "kraj" oraz od razu odpowiadający danemu państwu identyfikator, który zostałby zapisany do tabeli "id_flaga". mstraczkowski - a dlaczego uważasz, że podana propozycja nie jest zbyt dobra? |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 273 Pomógł: 52 Dołączył: 3.02.2013 Skąd: Przemyśl Ostrzeżenie: (0%) ![]() ![]() |
Jest naciągana, takie podejście nie jest czytelne dla innych programistów i tak się zwyczajnie nie robi - wprowadza to niepotrzebny chaos w kodzie.
Powinno się programować czysto, bez takich naciągań, między innymi dlatego mówi się, że PHP jest mało elegancki - dlatego że programiści stosują takie dziwne rozwiązania i nie dbają o czytelność kodu. Jeżeli użyłbyś mojego sposobu otrzymujesz czyste ID flagi kraju, jako że masz już zdefiniowaną tablicę tych flag możesz zrobić sobie tak:
Otrzymasz wtedy nazwę kraju na podstawie ID. Ten post edytował mstraczkowski 14.02.2013, 15:38:38 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 16:31 |