Předmět Autor Datum
google sme skusili? http://webcheatsheet.com/php/get_current_page_url. php
wam_Spider007 08.09.2012 11:22
wam_Spider007
Dík to je ono, akorát já nemůžu prostě najít jak to propojit s tím odesláním emailu.
Jarda Kopeček 08.09.2012 11:25
Jarda Kopeček
Tlačidlo spravíš buď použitím klasického HTML formulára, alebo použiješ odkaz, alebo spravíš nejaké…
los 08.09.2012 11:29
los
Mám dva soubory. V prvním je jenom formulář namířený na druhý php skript: <form action="druhy.php">…
Jarda Kopeček 08.09.2012 12:09
Jarda Kopeček
Tú funkciu môžeš pridať napr. na začiatok stránky prvni.php. Do formulára pridáš input type="hidden"…
los 08.09.2012 12:26
los
Díky za odpověď, ale mě to pořád nefunguje :.(. Nemůžeš prosím spojit ty kódy dohromady? Nechápu co…
Jarda Kopeček 08.09.2012 12:33
Jarda Kopeček
Já na to sám nepřijdu, :.(
Jarda Kopeček 08.09.2012 13:31
Jarda Kopeček
Prepáč, ale písať ti to celé zadarmo nebudem (v dobrom, samozrejme). Postup som napísal myslím vcelk…
los 08.09.2012 17:18
los
Já nechápu toto: "type="hidden" s name nastaveným napr. na "url", ktorého value nastavíš pomocou tej…
Jarda Kopeček 08.09.2012 18:00
Jarda Kopeček
Takže už máš URL uloženou v nějaké proměnné? Tak tu proměnnou přiřadíš skrytému prvku formuláře (inp…
host 08.09.2012 18:03
host
Máš tam formulár form action="druhy.php". V ňom máš 2 textové inputy a 1 submit tlačidlo. Tak tam eš…
los 08.09.2012 18:35
los
Udělal jsem to, přijde mi email, ale neni tam napsané z jaké stránky je odeslaný.
Jarda Kopeček 08.09.2012 19:26
Jarda Kopeček
V prvom rade skontroluj v prehliadači, či máš v tom input type=hidden správnu URL adresu. Potom pokr…
los 08.09.2012 19:49
los
Já nevím jak to myslíš. Nic vzdávám to. Dík za snahu, ale já to prostě nechápu. Prdim na to , nemá t…
Jarda Kopeček 08.09.2012 19:54
Jarda Kopeček
Myslel som tým to, že si otvoríš prehliadač so stránkou prvni.php, dáš si zobraziť zdrojový kód strá…
los 08.09.2012 20:00
los
Jo, ve zdrojovim kódu je vypsaná celá adresa stránky, ale po poslání v mejlu neni
Jarda Kopeček 08.09.2012 20:03
Jarda Kopeček
Dobre, takže prvú polovicu riešenia máš za sebou. Teraz daj na začiatok druhy.php: <? var_dump($url… poslední
los 08.09.2012 20:11
los

Tlačidlo spravíš buď použitím klasického HTML formulára, alebo použiješ odkaz, alebo spravíš nejaké JavaScriptové tlačidlo.

Formulár je lepší, pretože ho bude používať menej botov ako odkaz a je dostupný pre všetky prehliadače. Aktuálnu stránku si pošleš buď v URL alebo ak použiješ formulár, tak môžeš aj v hidden poli. Pri JavaScripte môžeš použiť napr. JSON.

Namiesto aktuálnej URL adresy stránky (ktorú v PHP zistíš z $_SERVER['REQUEST_URI']) ti stačí poslať identifikátor hry. Ak by si si posielal URL adresu, tak ti tam môže trochu skúsenejší používateľ podvrhnúť ľubovoľný odkaz.

Odoslanie mailu budeš musieť riešiť na serveri, napr. pomocou funkcie mail.

Mám dva soubory. V prvním je jenom formulář namířený na druhý php skript:

<form action="druhy.php">
Váš mail: <input name="mail_odesilatele"><br>
Předmět: <input name="predmet"><br>
Zpráva: <textarea name="zprava"></textarea><br>
<input type=submit value="Odeslat">
</form>

Soubor druhy.php vypadá takto:

<? if ( Mail("bradac.KO@seznam.cz", $predmet, $zprava, "From: " . $mail_odesilatele) )
echo "Mail byl odeslán";
else echo "Mail se nepodařilo odeslat"; ?>

Email se mi v pohodě odešle, i přijde, jak ale udělat aby mě vyplněno jako předmět adresu stránky ze které byl odeslanej?
Nechápu kam přidat toto http://webcheatsheet.com/php/get_current_page_url. php ?

Děkuji za trpělivost se mnou

Tú funkciu môžeš pridať napr. na začiatok stránky prvni.php. Do formulára pridáš input type="hidden" s name nastaveným napr. na "url", ktorého value nastavíš pomocou tej funkcie. Nezabudni použit htmlspecialchars na ošetrenie vstupu.

V druhy.php budeš mať potom nastavenú premennú $url s adresou stránky, ktorú môžeš pripojiť k predmetu. Skúsenejší používateľ tam samozrejme bude vedieť podvrhnúť ľubovoľnú URL, ale to nemusí byť problém. Ak by si to chcel ošetriť, tak môžeš aspoň overiť to, že tá URL je z tvojej domény.

Na tvojom mieste by som ešte kontroloval, či predmet a mail_odesilatele neobsahuje znak \n. Ak áno, tak by som to orezal alebo skončil s chybou.

Máš tam formulár form action="druhy.php". V ňom máš 2 textové inputy a 1 submit tlačidlo. Tak tam ešte pridáš (napr. úplne hneď za otvárací form tag):

<input type="hidden" name="url" value="<?=htmlspecialchars(curPageURL())?>">

Ak si bol schopný nakódiť ten formulár, tak toto musí byť predsa pre teba hračka.

Myslel som tým to, že si otvoríš prehliadač so stránkou prvni.php, dáš si zobraziť zdrojový kód stránky (vo väčšine prehliadačov je na to klávesová skratka Ctrl+U) a skontroluješ, či v tom input type=hidden máš očakávanú hodnotu. Ak nie, nemá ešte zmysel riešiť to, že nefunguje stránka druhy.php.

Ak tam máš očakávanú hodnotu, môžeme sa posunúť ďalej.

Dobre, takže prvú polovicu riešenia máš za sebou. Teraz daj na začiatok druhy.php:

<? var_dump($url) ?>

Čo to vypíše? Pripojil si tú URL k predmetu?

Btw, vo forme v prvni.php nemáš uvedenú metódu, takže sa používa GET metóda. Lepšie by bolo použiť POST metódu (method="POST"), ale to si môžeš nechať na neskôr ako bonus.

Zpět do poradny Odpovědět na původní otázku Nahoru