Autor Zpráva
Jan Gebauer
Profil
Dobrý den, vím že se to tu řešilo již několikrát, ale ani jeden ze zde uvedených rad mi nepomohl.
Prosím o jakoukoliv pomoc , jsem amatér.
Mám formulář na stránce :
<form action="send.php" method="post" id="frmRequest" name="frmRequest" onsubmit="return checkRequest();">
	<div class="form-row">
	<div class="form-popis"><label for="11">Vaše jméno :</label></div>
	<div class="form-control"><input name="name" id="11" type="text" value="" size="60" style="width: 180px;" /></div>
	</div><br class="no-screen" />

	<div class="form-row">
	<div class="form-popis"><label for="12">Předmět :</label></div>
	<div class="form-control"><input name="surname" id="12" type="text" value="" size="60" style="width: 180px;" /></div>
	</div><br class="no-screen" />

	<div class="form-row">
	<div class="form-popis"><label for="13">Váš email :</label></div>
	<div class="form-control"><input name="email" id="13" type="text" value="@" size="60" style="width: 180px;" /></div>
	</div><br class="no-screen" />	

	<div class="form-row">
	<div class="form-popis"><label for="14"><strong>Text zprávy:</strong></label></div>
	<div class="form-control"><textarea name="notes" id="14" cols="60" rows="2" style="width: 180px;"></textarea></div>
	</div><br class="no-screen" />

	<div class="form-row">

	<div class="form-control"><input name="send-form" value=" Odeslat zprávu " type="submit" /><input type="hidden" name="send" value="1" /></div>
	</div>
</form>	


Soubor send.php :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" 
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs">
<head>
<meta http-equiv="content-Type" content="text/html; charset=UTF-8"/>
<meta http-equiv="content-Language" content="CS"/>
<title>odesilani emailu</title>
<meta name="keywords" content=""/>
<meta name="description" content=""/>
<meta name="author" content=""/>
<meta name="copyright" content=""/>
<meta name="robots" content="All"/>
<meta name="cache-control" content="no-cache"/>
</head>
<body>
<?php
header("location:index_home.html#odeslano");


$to = "jan.gebauer@email.cz";
$extra = "From: $email\r\nReply-To: $email\r\n";
$subject = "Vzkaz od ".$name."";
$mess = "Jmeno: ".$name."\n Email: ".$email."\n Predmet: ".$surname."\n Text:\n".$notes."";

mail ($to, $subject, $mess, $extra);

?>
	
</body>
</html>



Script mi email odešle ale je prázdný , pouze v textu je uvedeno :
JmĂŠno:
Email:
Predmet:
Text:


Už jsem vyzkoušel mnoho věcí, ale nic nezabralo, od změny kodovaní až po vypnutí javascript kontroly, Nevím si s tím rady , kde je chyba, please help

Moderátor nightfish: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
Taps
Profil
Jan Gebauer:
To vypadá na problém s globálními proměnými
zkus nahradit
$email
za
$_POST['email']
atd.
Jan Gebauer
Profil
Když toto udělám tak , se mi na stránce po odeslání zobrazí prázdná stránka s nadpisem send.php a nic to neudělá
Jan Gebauer
Profil
kod vypadal takto, jestli jsem to správně napsal
<?php
header("location:index_home.html#odeslano");


$to = "jan.gebauer@email.cz";
$extra = "From: $_POST['email']\r\nReply-To: $_POST['email']\r\n";
$subject = "Vzkaz od ".$_POST['name']."";
$mess = "Jmeno: ".$_POST['name']."\n Email: ".$_POST['email']."\n Predmet: ".$_POST['surname']."\n Text:\n".$_POST['notes']."";

mail ($to, $subject, $mess, $extra);

?>



Moderátor nightfish: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
nightfish
Profil
pro zápis prvků pole uvnitř řetězce se používá jiná syntaxe
$extra = "From: $_POST[email]\r\nReply-To: $_POST[email]\r\n";
Jan Gebauer
Profil
Když to přepíšu, email mi nepřijde
Pro jistotu , kód :
<?php
header("location:index_home.html#odeslano");


$to = "jan.gebauer@email.cz";
$extra = "From: $_POST[email]\r\nReply-To: $_POST[email]\r\n";
$subject = "Vzkaz od ".$_POST[name]."";
$mess = "Jmeno: ".$_POST[name]."\n Email: ".$_POST[email]."\n Predmet: ".$_POST[surname]."\n Text:\n".$_POST[notes]."";

mail ($to, $subject, $mess, $extra);

?>


Moderátor Alphard: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
Jan Gebauer
Profil
Jsem amatér, tak jestli něco dělám fakt špatně tak se omlouvám
Alphard
Profil
Jan Gebauer:
Nemůžete vše změnit bez ohledu na kontext.
Vraťte tam script z [#4], změňte jen ten řádek uvedený v [#5], zakomentujte (nebo smažte) header na 2. řádku, dopište print_r($_POST);, odeštete mail a napište, co se vám ukáže.
Jan Gebauer
Profil
tak tohle to napsalo :
Array ( [name] => ergergerg [surname] => ergergerger [email] => t@ergerg.lo [notes] => ergregergergergergg [send-form] => Odeslat zprávu [send] => 1 )
Alphard
Profil
Žádná chyba a proměnné jsou správně naplněné, email je v pořádku nebo prázdný?

Script nyní vypadá předpokládám takhle:
$to = "jan.gebauer@email.cz";
$extra = "From: $_POST[email]\r\nReply-To: $_POST[email]\r\n";
$subject = "Vzkaz od ".$_POST['name']."";
$mess = "Jmeno: ".$_POST['name']."\n Email: ".$_POST['email']."\n Predmet: ".$_POST['surname']."\n Text:\n".$_POST['notes']."";

mail ($to, $subject, $mess, $extra);
Jan Gebauer
Profil
Ano skript ted tak vypada, ale neodesle se email, vubec mi nedojde
nightfish
Profil
Jan Gebauer:
Ano skript ted tak vypada, ale neodesle se email, vubec mi nedojde
je třeba rozlišovat 2 situace:
1) mail se neodešle
2) mail nepřijde

ad 1) obvykle se vypíše nějaká chybová hláška ze které se dá poznat, v čem je problém
ad 2) počkejte půl dne až den, pravidelně kontrolujte spamovou složku
pokud ani po dni e-mail nepřijde, zkuste jej poslat na jinou adresu/jiné adresy (nejlépe u jiného poštovního poskytovatele - např. na gmail atd.)
Jan Gebauer
Profil
ok, diky, mail nepřijde, žádnou chybovou hlášku to nepíše, akorát jak jsem napsal ten ůvodní skript na začátku., tak jsem tu zprávu měl hned, sice prázdnou , ale měl.
Jan Gebauer
Profil
vytvořil jsem si gmail a ani tam nic prozatím nepřišlo
Alphard
Profil
Máte povolený výpis chyb?
Co tohle?
if(mail($to, $subject, $mess, $extra))
  echo "odeslano";
else
  echo "chyba";


Neupravil jste ještě něco jiného? Odstranění header by nemělo mít vliv na odeslání mailu, ale můžete ho tam zkusit vrátit a poslat. Musíte prostě zkoušet, kdybychom viděli chybu, tak vám to napíšeme.
Jan Gebauer
Profil
na gmnail to chodí normálně, děkuji,děkuji,děkujiděkujiděkujiděkujiděkujiděkujiděkujiděkuji :-)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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