• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Czy można utworzyć plik .html zamiast tworzenia folderu.

Object Storage Arubacloud
0 głosów
692 wizyt
pytanie zadane 23 sierpnia 2015 w PHP przez jaca121212 Nałogowiec (40,760 p.)
Tak jak w temacie. Tworze np nowy artykuł (i kilka informacji przekazuję do bazy danych) wraz z przekazaniem informacji do bazy danych chciałbym utworzyć nową podstronę nazwa podstrony będzie taka sama jak nanzwa tematu. Czy jest możliwość zrobienia  tego?

Wiem jak utworzyć folder w php ale nie wiem jak utworzyć dokument html. W odpowiedzi prosiłbym link do artykułu lub przykład.

Z góry dzięki za zainteresowanie się temate.

1 odpowiedź

+3 głosów
odpowiedź 23 sierpnia 2015 przez Arkadiusz Waluk Ekspert (287,950 p.)
Nie nie nie, to nie tak ;)

Jakby robić to na plikach i folderach to przy 1000 artykułów/podstron było by 1000 folderów i jeszcze tyle plików. A po co to by komu skoro przecież dane mają być trzymane w bazie?

Skoro masz artykuły w bazie danych to wystarczy jeden plik php którym te dane wyciągniesz i wyświetlisz. Jak zidentyfikować o jaką podstronę chodzi? Przekazując w adresie coś unikalnego do tego pliku który będzie dane wyciągał. Może to być np. pokaz.php?id=5 (założyłem że plik nazywa się pokaz.php ale może być to dowolny plik) i wtedy w tym pliku musisz odczytać wartość tej zmiennej id z adresu i wyciągnąć odpowiedni rekord z bazy. O pobieraniu i przekazywaniu danych w adresie nie wiem czy wiesz, jeśli nie to możesz szukać pod hasłem "GET PHP", ewentualnie mogę jeszcze coś dopowiedzieć. Pobieranie tego jednego rekordu z bazy to odpowiednie zapytanie z WHERE. Jeśli nie chcesz aby to było id to może być dowolna inna rzecz np. adres pokaz.php?adres=to-jest-bardzo-dlugi-tytul albo tak jak jest na tym forum id pytania i tytuł:
https://forum.pasja-informatyki.pl/53297/czy-mozna-utworzyc-plik-html-zamiast-tworzenia-folderu

No właśnie, zapytasz też jak to możliwe że tutaj nie ma nazwy pliku php, nazwy zmiennej i nic takiego - do tego służy mod_rewrite czyli przepisywanie adresów. Jedną linijką możesz zdefiniować np. że to co zostanie wpisane w adres strony czyli np. mojastrona.pl/bardzo-ciekawy-artykul przez serwer może być widziane jako np. index.php?adres=bardzo-ciekawy-artykul. To wszystko oczywiście tylko przykłady, chciałem jak najprościej pokazać jak to działa.

Może tak lekko chaotycznie i dużo tego "np" ale mam nadzieję, że w miarę wyjaśniałem o co chodzi, jak czegoś jeszcze nie zrozumiałeś to pytaj ;)
komentarz 23 sierpnia 2015 przez jaca121212 Nałogowiec (40,760 p.)
Wiem o tym mod_rewrite.

Mam stronkę i nie ogarniam do końca jak wyświetlić profile innych userów  na  stronie np user.php jak powinien tam wyglądac kod aby pobierał po kliknięciu w danego usera jego dane

najlepszym przykladem jest np facebook wyszukiwarka  wpisujemy fraze i po kliknięciu przechodzimy do profilu innej osoby bez zmian jakich kolwiek na stronie (css).
komentarz 23 sierpnia 2015 przez Arkadiusz Waluk Ekspert (287,950 p.)

Skoro nie ogarniasz jak wyświetlać profile innych userów to postaram się wytłumaczyć ;)

Jakie masz tam linki żeby zobaczyć profil usera czy jeszcze wcale nie masz? Jak przechowujesz dane użytkowników w bazie, co tam o nich masz i co chcesz aby było w adresie? ID czy może login?

Założę dla przykładu, że zrobimy po loginie użytkownika. Dajesz gdzieś na stronie linki do tych profili np.
user.php?login=kowalski
user.php?login=nowak
Itd... Wiesz jak to wyświetlić czy nie? Po prostu zapytaniem z bazy wyciągasz loginy użytkowników których tam chcesz pokazać i tyle.

Teraz w tym pliku user.php pobierasz wartość tej zmiennej login z adresu:

$login=$_GET['login'];

I teraz robisz zapytanie do bazy z warunkiem WHERE login=$login. I na koniec po prostu wyświetlasz dane tego użytkownika. Sam szkielet strony ani HTML ani CSS nie musi się zmieniać, bo po prostu w odpowiednie miejsca kodu podstawisz te dane które wyciągnąłeś z bazy o danym użytkowniku. Reszta kodu ciągle jest więc taka sama.

Oczywiście temu co tu napisałem jeszcze wiele brakuje, bo trzeba by sprawdzić czy zmienna login w adresie została podana i jeśli nie to np. tylko wtedy wyświetlać listę profili czy też zabezpieczyć to przed mysql injection ale tak w skrócie przedstawiłem jak to powinno działać.

Czy teraz już lepiej zrozumiałeś? :)

Podobne pytania

0 głosów
2 odpowiedzi 219 wizyt
0 głosów
1 odpowiedź 205 wizyt
pytanie zadane 29 października 2017 w SQL, bazy danych przez demotywatorking Obywatel (1,210 p.)
0 głosów
1 odpowiedź 260 wizyt

92,579 zapytań

141,429 odpowiedzi

319,654 komentarzy

61,962 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...