Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] generowanie jednorazowej strony / adresu
Beneglih
post 30.06.2011, 20:14:06
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 4.06.2011

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


jak w temacie
nie jestem pewien, jaki sposób nada się do tego najlepiej, ale domyślam się, że php

pytanie więc brzmi:
w jaki sposób można generować jednorazowy losowy adres strony z wybraną treścią?

czyli np. mam na serwerze plik strona.php

i chciałbym mieć np. drugą stronę na którą wchodzę, wciskam generuj i dostaję losowy adres po slashu który będzie includował plik strona.php

ogólnie prosta sprawa typu formularz, include itd.

pytanie tylko jak stworzyć losowo generujący się i działający JEDNORAZOWO link?

czyli generuje mi się strona np. http://domena.pl/afisaet2131.php
i w niej zincludowana jest strona.php
ALE LINK DZIAŁA TYLKO JEDNORAZOWO
czyli jak ktoś wejdzie na ten wygenerowany link i opuści stronę, to link automatycznie wygasa

jak się do tego zabrać, poradźcie proszę smile.gif
z góry dzięki
Go to the top of the page
+Quote Post
Sephirus
post 30.06.2011, 20:23:18
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


Hmm nie do końca kumam ;P

Ale po kolei -

Przede wszystkim będziesz potrzebował na serwerze jakiegoś mechanizmu do translacji adresów (mod-rewrite pod apache w .htaccess na przykład)
/Proponuje tu też zapoznać się z podstawami wyrażeń regularnych/

Mając to możesz sobie zrobić translacje dowolnego ciągu po domenie tak aby był zamieniany na to co chcesz na przykład:

Strona www.strona.pl/costam_co_sobie_tylko_wymyslisz.php może przekierowywać na www.strona.pl/index.php?strona=costam_co_sobie_tylko_wymyslisz

Jak już to ogarniesz to jedziemy dalej:

Musisz wybrać mechanizm do przechowywania tymczasowych adresów, podstawowe opcje są 3:
1. Pliki tekstowe (mogą mieć nazwę równą temu po domenie) po wygenerowaniu takiej losowej strony zapisujesz plik. Po wejściu na nią kasujesz go. Proste.
2. Baza danych (MySQL na przykład)
3. MemCache

Jak już masz wybrany sposób zapisu tymczasowych linków czas na ich pseudo-losową generację. Opcji masz wiele:
1. MD5 z jakiegoś czasu (np z funkcji time() albo microtime())
2. MD5 z liczby pseudolosowej (na przykład md5(mt_rand(0-10000))
3. Własny generatorek znaków o podanej długości - deklarujesz tablicę ze znakami na przykład:

  1. $znaki = array('a','b','c','d',......'A','B','C','D',.....'0','1','2',3'....'-','_');


Następnie losujesz na przykład tak:

  1. $dlugosc = 10;
  2. $link = '';
  3.  
  4. for($i = 0; $i < $dlugosc; $i++)
  5. {
  6. $link .= $znaki[ mt_rand(0, count($znaki) - 1 ];
  7. }


No i to by było na tyle wink.gif Zapoznaj się z tym wszystkim wink.gif

Jakby co to pisz wink.gif

HTH! wink.gif


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
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: 12.07.2025 - 20:40