Autor Zpráva
VoTyAss
Profil
Dobrý den, chtěl bych se zeptat jak udělám odkaz který uživatel sám dopíše ...
na stránce bud políčko do kterého uživatel napíše své jméno a poté ho to přesměruje na jeho "stránku" ...
Do políčka napíše např. karel123 a předá ho to na http://stranka.cz/karel123.php/
Joker
Profil
Asi nejsnazší cesta k tomu by byla formulář odesílaný metodou GET.
Ideálně kdyby cílová adresa mohla být ve formátu example.com/stránka?něco=karel123
Jestli to takový formát mít nemůže, stejně bych to tak udělal a na tu adresu pak dal skript s přesměrováním.
VoTyAss
Profil
Mám formulář v tomto stylu:

<form action="http://stranka.cz/" method="get">
<p class="center">LOGIN</p>
<input type="text" name="user"><br> <p class="center">
<button type="submit" class="link">Přepojit</button></p>
</form>




Ale nevím jak udělat ten přesměrovací skript, .. No ... prostě to nechápu :D Nejjednodušší by pro mě bylo to co jsem popisoval, ... že by uživatel napsal přímo svůj nick ze kterého by ho to přesměrovalo ...
Marschmallow
Profil
Joker + Joker v [#5]:
example.com/stránka?něco=karel123 (...) Jestli to takový formát mít nemůže, stejně bych to tak udělal a na tu adresu pak dal skript s přesměrováním.
Jde to i tak, jak uvádím níže...

VoTyAss:
Jde to i pomocí JavaScriptu (roboti nemohou psát spamové zprávy). Zkus tohle (zdrojový kód) a řekni, zda ti to vyhovuje :)
Joker
Profil
VoTyAss:
No, a tohle už každého pošle na adresu závislou na zadané hodnotě.

Kdybych zadal třeba „Pepa“, pošle mě to na stranka.cz?user=pepa
Kdybych zadal „Franda“, pošle mě to na stranka.cz?user=franta

Ten přesměrovávací skript by vypadal úplně jednoduše, v nejprimitivnější podobě:
<?php header("Location: stranka.cz/" . urlencode($_GET["user"]); ?>
Marschmallow
Profil
Joker:
Kdybych zadal ‚Franda‘, pošle mě to na stranka.cz?user=franta
Opravdu? :o)
Leda pomocí pravidla v .htaccess pomocí Redirect 301.
Joker
Profil
Marschmallow:
Opravdu? :o)
Ano, kdybych to napsal bez toho překlepu :-)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0