Formulář pro odesílání emailů.
- Cici
- Začátečník

- Registrován: 20. črc 2005
- Kontaktovat uživatele:
Formulář pro odesílání emailů.
Nevíte jak se dá vytvořit formulář jako maj tady: www.bluebord.cz. Myslím tím ten co rychle odešle autorovi e-mail. Tam se to menuje Blueform.

MSI 648 Max, Intel Pentium 4C 2,4 GHz (2411@2534) Northwood, ATI Radeon 9800 Pro, 512 MB DDR RAM, Genius SW-5.1 Home Theater
- Lamicz
- Začátečník

- Registrován: 30. kvě 2005
- Bydliště: In a galaxy far away...
- Kontaktovat uživatele:
Cus, napr. tak v PHP:
// EDIT: Tak sry, Jaspere
, to, co mam tady ja, je naprosty minimum pro funkci mail(). 
Kód: Vybrat vše
<?php
$action = $_GET['action'];
if($action == send_email){
$message = $_POST['message'];
$address = "tvuj@email.cz";
$subject = "nejaky predmet...";
if($message != ""){
mail("$address","$subject","$message");
}
}
?>
<H2>Poslat e-mail</H2>
<FORM METHOD="POST" ACTION="?action=send_email">
<table>
<tr>
<td>Zpráva:</td>
<td><TEXTAREA NAME="message" ROWS="2" COLS="20"></TEXTAREA></td>
</tr>
<tr>
<td><INPUT TYPE="SUBMIT" VALUE="Poslat"></td>
</tr>
</table>
</FORM>
Naposledy upravil(a) Lamicz dne sob 27. srp 2005, 22:14, celkem upraveno 1 x.
:: DESKA :: Asus A8V-XE (VIA K8T890) :: CPU :: AMD Athlon 64 3700+ :: VGA :: ATI Asus GF7600 512MB - passive solution :: RAM :: 4x 256MB Samsung :: HDD :: 80GB Maxtor PATA ::
- Jasper
- Středně pokročilý

- Registrován: 25. úno 2004
- Kontaktovat uživatele:
Jde to udelat treba takto. Budes potrebovat nejaky hosting s podporou PHP. Budes mit 2 soubory:
plus.php - tento soubor zobrazi formular na odesilani mailu:
zpracuj.php - provede odeslani mailu
Misto toho $komu="JasperCZ@seznam.cz"; tam dopis mezi ty uvozovky svuj mail
Ale bacha na ruzne freehostingy, kde maji vetsinou omezene odesilani emailu pomoci te funkce mail. Treba na ic.cz je to tusim na 50 mailu za hodinu...
// EDIT sakris, nez sem to dopsal, tak uz me nekdo predbehl
plus.php - tento soubor zobrazi formular na odesilani mailu:
Kód: Vybrat vše
<html>
<head>
<title>mail</title>
</head>
<body>
<?php
$hlaska=$_GET["hlaska"];
if($hlaska==1) echo "Mail byl uspesne odeslan.";
?>
<form method="POST" action="zpracuj.php">
<p>Váš email : <input type="text" name="email" size="20"></p>
<p>Předmět: <input type="text" name="predmet" size="20"></p>
<p>Zpráva: <textarea rows="2" name="zprava" cols="20"></textarea></p>
<p><input type="submit" value="Odeslat" name="B1"></p>
</form>
</body>
</html>
Kód: Vybrat vše
<?php
$komu="JasperCZ@seznam.cz";
$email=$_POST["email"];
$predmet=$_POST["predmet"];
$zprava=$_POST["zprava"];
$hlavicky = "From: $email\r\n"; // od koho e-mail posíláme
$hlavicky .= "X-Priority: 3\r\n"; // priorita 1 (nejvyšší), 3, 5 (nejnižší)
$hlavicky .= "X-Mailer: moje PHP\r\n"; // informace o způsobu odeslání
$hlavicky .= "Return-Path: <$email>\r\n"; // zpáteční mailová adresa
mail($komu, $predmet,$zprava, $hlavicky);
header("Location: http://tvuj_web.cz/plus.php?hlaska=1");
?>Ale bacha na ruzne freehostingy, kde maji vetsinou omezene odesilani emailu pomoci te funkce mail. Treba na ic.cz je to tusim na 50 mailu za hodinu...
// EDIT sakris, nez sem to dopsal, tak uz me nekdo predbehl
- Cici
- Začátečník

- Registrován: 20. črc 2005
- Kontaktovat uživatele:
- Drom
- Začátečník

- Registrován: 18. zář 2005
- Bydliště: Kdyne
- Kontaktovat uživatele:
server musi podporovat posilani pres funkci mail(). Napr. pokud tam pobezi Kerio Mail Server, tak to bude jinak:
Kód: Vybrat vše
include('Mail.php');
$zprava = 'nejakej text, co chces poslat';
$headers['Return-Path'] = 'adresa@odesilatele';
$headers['From'] = 'adresa@odesilatele';
$headers['Subject'] = 'Predmet';
$headers['Content-Type'] = 'text/html; charset="Windows-1250"';
$headers['Date'] = Date ("r");
$headers['Importance'] = "Normal";
$params['host'] = 'localhost'; // adresa serveru
$params['port'] = '25'; // port pro pipojeni k serveru
$params['auth'] = false;
$params['username'] = ''; // user pro pripojeni
$params['password'] = ''; // heslo pro pripojeni
$headers['To'] = 'mail@adresata'; // mail prijemce
$mail_object =& Mail::factory('smtp', $params);
$mail_object->send($headers['To'], $headers, $zprava);
// !!! hlavicka $headers['To'] MUSI byt stejna adresa jako prvni parametr funkce send() - posledni radek - jinak to neposila