Pytanie o dynamiczne strony

0

Potrzebuję zrobić stronę, która zmienia się ze względu rodzaju jej wywołania tzn. Jest strona z wyszukiwarką bazy danych przekierowuje ona wyniki do następnej strony (Wyniki są wyświetlane w liście czyli coś jak Google), i w tym miejscu mam problem, a mianowicie chcę, żeby z otrzymanych wyników można było przenieść do strony wygenerowanej w sposób dynamiczny, zależnie na jaki wynik się kliknęło. A jaśniej otrzymuję wyniki z przeszukiwania i klikając na jeden z nich przekierowuje mnie do dynamicznej strony. Z jakich sposobów tworzenia stron mam skorzystać: Java-jsp i serwlety, asp .NET, czy php?
Z góry dziękuje za odpowiedzi

0
quba88 napisał(a)

Potrzebuję zrobić stronę, która zmienia się ze względu rodzaju jej wywołania tzn. Jest strona z wyszukiwarką bazy danych przekierowuje ona wyniki do następnej strony (Wyniki są wyświetlane w liście czyli coś jak Google), i w tym miejscu mam problem, a mianowicie chcę [..]

dotąd rozumie ale reszty nie jestem w stanie skonwertować na mój język

0

Chodzi mi o możliwość generowania strony na podstawie zaznaczonego wyniku
W wyniku wyszukiwania na razie jest sam tekst (bez odnośników) taki spis, chcę dodać do nich jakiś sposób tworzenia strony np. wynik wyszukiwania to nazwy ptaków i chcę po znalezieniu jakiegoś interesującego mnie ptaka mieć możliwość wygenerowania strony o tym ptaku. Nie wiem jaki sposób mam przekazywać, że użytkownik wybrał ten wynik a nie inny.

0

Mógłbyś zrobić to po prostu tak samo łatwo jak robisz zwykły program w języku C lub Delphi. Są do tego biblioteki "VCL for the Web".

0

Mariusz, ile razy mam powtarzać, że nie C tylko C++? Nawet nie odróżniasz języków...

0

Mógłbyś zrobić to po prostu tak samo łatwo jak robisz zwykły program w języku C lub Delphi. Są do tego biblioteki "VCL for the Web".

mógłbyś trochę jaśniej to ma być webowa aplikacja działająca po stronie serwera. Myślałem nad technologią serwletową tzn.
główna strona z wyszukiwarką -> serwlet-> strona z wynikami w jsp-> .. do tego momentu wszystko jest do zrobienia, ale nie wiem jak zrobić przejście ze strony z wynikami do kolejnej, ze względu na wybraną opcje (muszę do następnej strony przekazać nr w bazie danych chyba tak najprościej będzie) w ostateczności mogę do każdego z wyników dodać butona z formularza ale on nie przesyła żadnej wartości ("subbmit").

0
quba88 napisał(a)

Mógłbyś zrobić to po prostu tak samo łatwo jak robisz zwykły program w języku C lub Delphi. Są do tego biblioteki "VCL for the Web".

mógłbyś trochę jaśniej to ma być webowa aplikacja działająca po stronie serwera. .

Technologia VCL for the Web umożliwia błyskawiczne tworzenie aplikacji internetowych w sposób prawie dokładnie taki sam jak robisz zwykłą aplikację w sposób wizualny przesuwając komponenty z palety na formularz w pakiecie kompilatora. Można robić całkiem zaawansowane aplikacje w ten sposób bez potrzeby uczenia sie zaawansowanego html, java script. Nie trzeba w ogóle znać php. Back-end piszesz w Delphi lub C a kompilator generuje aplikację internetową, która, po otworzeniu adresu strony w przeglądarce, generuje kod html, który wysyła do przeglądarki.

Trzeba wziąć pod uwagę, że jest to rozwiązanie niestandardowe i masz mniejszy wpływ nad tworzonym kodem html, to znaczy możesz robić nawet profesjonalne zaawansowane szablony stron, do użycia w aplikacji, ale tworzenie kodu html zależy prawie wyłącznie od tego jakiego kodu C lub Delphi użyjesz do back-end.

Reszta, czyli na przykład dostęp do bazy danych, robisz tak samo jak w zwykłej aplikacji. Bazę danych umieszczasz na serwerze i masz do niej dostęp lokalny przez aplikację, która również jest na serwerze. Wymagany jest serwer z systemem operacyjnym windows, więc możesz go postawić nawet w domu na stałym IP albo możesz wynająć szybkie łącze z serwerem windows server 2003 typu VPS za 15 euro miesięcznie.

Jeśli chcesz wiedzieć więcej to pisz do: [email protected]

0
quba88 napisał(a)

ale nie wiem jak zrobić przejście ze strony z wynikami do kolejnej, ze względu na wybraną opcje (muszę do następnej strony przekazać nr w bazie danych chyba tak najprościej będzie) w ostateczności mogę do każdego z wyników dodać butona z formularza ale on nie przesyła żadnej wartości ("subbmit").

Ale w czym konkretnie masz problem? W skonstruowaniu formularza ze szczegółami czegoś tam, a na stronie z wynikami wyszukiwania umieszczenie linku (bo po co jakiś button?) do niego?

0

Może jasno się nie wyrażam (przepraszam za to). Chodzi mi o to że moja baza może mieć 'n' lub więcej rekordów z możliwością dodania kolejnych, wygodniej będzie stworzenie dynamicznej (szablonowej) strony niż dla każdego z rekordów tworzyć osobną. Chcę aby następną stronę jaką użytkownik wybierze (po stronie z wynikami) będzie ta dynamiczna nie wiem jak przejście zrobić tak aby było wiadomo co użytkownik wybrał.

a na stronie z wynikami wyszukiwania umieszczenie linku (bo po co jakiś button?) do niego?
w ten sposób bym musiał tworzyć wiele stron, i wiele odwołań, a korzystając z dynamicznej strony tylko jedną, tylko tyle, że muszę wiedzieć jak przesłać argument pomiędzy strona z wynikami -> strona do celowa.

0
quba88 napisał(a)

muszę wiedzieć jak przesłać argument pomiędzy strona z wynikami -> strona do celowa.

W linku umieść jakieś ID rekordu wyszukanego w bazie. Proste rozwiązanie, które wszyscy stosują.

0

W linku umieść jakieś ID rekordu wyszukanego w bazie. Proste rozwiązanie, które wszyscy stosują.

dobra mogę to umieścić ale co dalej jak pobrać w następnej stronie (o ile do niej dojdzie przekierowanie) nr rekordu bo np mój link będzie coś w stylu
http://localhost:8080/Folder/plik?id=1
to jak z tego wyciągnąć jedynkę a poza tym odeśle mnie do strony 404

0

No wtedy podczas obsługi żądania do strony "plik" pobierasz id z query stringa, a potem wczytujesz dane z bazy i wyświetlasz użytkownikowi.

0
quba88 napisał(a)

W linku umieść jakieś ID rekordu wyszukanego w bazie. Proste rozwiązanie, które wszyscy stosują.

dobra mogę to umieścić ale co dalej jak pobrać w następnej stronie (o ile do niej dojdzie przekierowanie) nr rekordu bo np mój link będzie coś w stylu
http://localhost:8080/Folder/plik?id=1
to jak z tego wyciągnąć jedynkę a poza tym odeśle mnie do strony 404

W linku nie powinieneś umieszczać żadnych ważnych danych, jak tu id=1, ze względów bezpieczeństwa. Co będzie gdy użytkownik zmieni parametr i dzięki temu zostanie mu na przykład wyświetlony rekord, do którego wyświetlenia nie powinien mieć uprawnień? Lepiej po prostu przekazać serwerowi informację że kliknięty został link o danym identyfikatorze co po stronie serwera wywoła kod robiący coś z id=1 (id=1 będzie niedostępne w kodzie html zwracanemu użytkownikowi) i ta akcja będzie całkowicie niedostępna dla użytkownika i niemożliwa do zmiany.

0

Mariusz, nie [CIACH!].

Przekazywanie do serwera czyli POST? POSTem manipuluje się tak samo łatwo jak GETem. Walidacja po stronie serwera być musi zawsze. Użycie GET do przesyłania mniej wrażliwych danych jest znowu konieczna ze względu na wygodę użytkownika, chociażby możliwość dodania linka do akcji do zakładek, przeklejenia na forum/komunikator...

Wszystko, co jest wykonywane po stronie klienta jest podatne na manipulację, wiele cudów tworzonych przez 'mondrych' adminów po stronie serwera również. Wszystkiemu winne powierzchowne podejście do tematu i złudna wiara w bezpieczeństwo.

0

Przecież zabezpieczenie po stronie serwera w przypadku odczytu z requestu to PODSTAWA. O tym nawet tu nie powinniśmy teraz dyskutować. Zabezpieczać przed manipulacją można różnie. W przypadku mniej ważnych danych można nawet walnąć do adresu coś takiego:

$id = 2
$code = SHA1('alejestemfajnyoja123456haha' . $id . 'haha deus')

Wynik:http://localhost:8080/serve?id=2&code=650afb2cba9a35f8425d87a57ac14e6b20b439ab

Zmiana ID nic nie da, bo weryfikujemy czy code zgadza się z podanym wzorem, a crackowanie odpowiednio długiego saltu będzie jeszcze trudniejsze niż po prostu złamanie hasła do FTP.

Oczywiście też można posłużyć się bazą danych i tam zapisywać te hasze, dodać system rejestracji userów i linkować pliki z ich profilami etc, etc.

0

W przypadku mało ważnych danych nie ma co się tak bawić. Każdy inny trzeba obwarować z kilku stron.

...a większość adminów to i tak idioci - kilka serwerów od streamowania wideo 'rozwaliłem' bo przehashowałem sobie po prostu fragmenty linków do filmów, zawsze nazwa pliku była albo całą ścieżką albo identyfikatorem. Cały mechanizm płatności i AJAX-owe odsyłanie nazwy do klienta mogli sobie wsadzić. Salt itd. to podstawa.

1 użytkowników online, w tym zalogowanych: 0, gości: 1