Autor | Zpráva | ||
---|---|---|---|
tpilar Profil |
#1 · Zasláno: 26. 2. 2013, 10:12:06
Jsem v podstatě začátečník.
Nejsem schopen dát dohromady funkční odesílání e-mailu. Nejde mi o rozvržení nebo o posílání příloh ale zatím jen a pouze o to aby mail opravdu odešel a neotevíral pouze nějaký Outlook ne Win.Mail apod. Podle správce webhostingu na savana.cz by měla stačit funkce mail a není nutné instalovat nebo volat phpmailer : <?php function show_form() { ?> <form action="" method=post> <div align="center"> <br />Jméno:*<br /> <input type="text" name="name" size="40"> <br />Telefonní číslo:<br /> <input type="text" name="tel" size="40"> <br />E-mail:*<br /> <input type="text" name="email" size="40"> <br />Téma:<br /> <input type="text" name="title" size="40"> <br />Text zprávy:*<br /> <textarea rows="10" name="mess" cols="30"></textarea> <br /><input type="submit" value="Odeslat" name="submit"> </div> </form> * Musíte vyplňit. <?php } function complete_mail() { // $_POST['title'] data z inputu Přemět, trim() - odstraňuje zbytečné //mezery a řádky, htmlspecialchars() - převádí specifické symboly //do HTML entit, proto, aby jsme zabránili nejjednoduššímu pokusu o //hacknutí stránky a substr($_POST['title'], 0, 1000) - //omezujeme text do 1000 znaků. Pro proměnné //$_POST['mess'], $_POST['name'], $_POST['tel'], $_POST['email'] //uděláme to samé. $title = substr(htmlspecialchars(trim($_POST['title'])), 0, 1000); $message = substr(htmlspecialchars(trim($_POST['mess'])), 0, 1000000); $name = substr(htmlspecialchars(trim($_POST['name'])), 0, 30); $tel = substr(htmlspecialchars(trim($_POST['tel'])), 0, 30); $email = substr(htmlspecialchars(trim($_POST['email'])), 0, 50); $mess = ' Jméno odesílatele: '.$name.' <br> Telefonní číslo: '.$tel.' <br> Email: '.$email.' <br> '.$message; // $to - příjemce emailu $to = $email; // $from - odesílatel $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n"; $headers .= 'From: rexon.cz<info@rexon.cz>'. "\r\n"; if(mail($to, $title, $mess, $headers)){ echo 'Děkujeme! Váš dopis byl odeslán.'; }else{ echo 'Dopis nebyl odeslán'; } } function output_err($num) { $err[0] = 'Chyba! Zadejte jméno.'; $err[1] = 'Chyba! Špatný e-mail.'; $err[2] = 'Chyba! Zadejte zprávu.'; echo '<p>'.$err[$num].'</p>'; show_form(); exit(); } if (!empty($_POST['submit'])) complete_mail(); else show_form(); ?> Případně k vidění ve zkušebním ovšem jak již jsem psal zcela nefunkčním stavu odeslání e-mailu na : www.tpilar.cz Předem díky za rady. Tom |
||
Demoniak Profil |
#2 · Zasláno: 26. 2. 2013, 12:20:32
Nevím, jestli už si to opravoval, ale mě to u tebe normálně proběhne a email mi přijde bez problémů.
|
||
Časová prodleva: 11 let
|
0