Autor Zpráva
koksiksloop
Profil
Mám takovej problém...
nikde jsem nenašel řešení.
<form action="skript.php" method="post" target="_blank">
<b>Jméno:</b><input type="text" size="10" name="jmeno">
<b>Heslo:</b><input type="password" size="10" name="heslo">
<input type=submit value=odeslat>
</form>
Jak se dá udělat aby se ten formulář poslal tomu skriptu (action="skript.html") a ten to poslal dalšímu skriptu, ktereý by to zobrazil na nějaké "webové stránce" (nebo poslal na e-mail) nejlíp přes method="post"
Nevím co mám napsat do souboru skript.html.
Taps
Profil
koksiksloop:
1. pokud mám action zpracovat odeslané údaje tak musíš použít php čili skript.php
2. ve skriptu se pak k odeslaným položkam dostaneš takto:
<?
$jmeno = $_POST['jmeno'];
$heslo = $_POST['heslo'];

echo 'Jméno: '.$jmeno.'<br>';
echo 'Heslo: '.$heslo.'<br>';
?>
3. pro odeslání na e-mail slouží v php funkce
<?
mail();
?>
koksiksloop
Profil
Taps:
Díky, funguje to.
Marschmallow
Profil
koksiksloop:
Tohle je skript na odesílání do mailu tvuj@email.cz.
Já mám v odesílacím skriptu (u tebe je to skript.php - musí tam být .php) toto:
<?php
$to = "tvuj@email.cz";
$extra = "From: ".$_POST['email']."\r\nReply-To: ".$_POST['email']."\r\n";
$subject = "Odeslání jména a hesla toto je předmět ".$_POST['jmeno']."";
$mess = "Jméno: ".$_POST['jmeno']."
\nHeslo: ".$_POST['heslo']."";
mail ($to, $subject, $mess, $extra);
?>
<html><head>
<meta http-equiv="refresh" content="0; url=odeslani_ok.php">
<title>Přesměrování...</title>
</head><body></body></html>
A potom tam mám normálně v HTML přesměrování na soubor odeslani_ok.php (ten klidně už může být HTML). Jen nezapomeň to, co je zde v "hranatých závorkách [ ], je ve formuláři jako hodnota name. To \n značí nový řádek v mailu ;)
Davex
Profil
Marschmallow:
Tvůj skript je nebezpečný a umožňuje odeslání e-mailu na jakoukoliv adresu, což se často zneužívá k rozesílání spamu. Hodnoty proměnných vložených do hlavičky je nutné důsledně hlídat a nepovolit některé speciální znaky jako je například znak konce řádku.

Do hlavičky také nepatří české Od:, ale mělo by tam být anglické From:.
Marschmallow
Profil
Davex:
Díky za upozornění.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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