Сделать это у меня получилось только тогда, когда текст письма заранее прописан. А мне нужно, чтобы человек мог отредактировать письмо так как ему нужно, выставил "якоря", после чего, файл обработчик каким-то способом заменил якоря на нужные переменные.
Как это можно реализовать???



Спустя 5 минут, 45 секунд (20.12.2009 - 21:11) Romms написал(а):
код в студию!
Спустя 8 минут, 41 секунда (20.12.2009 - 21:19) vertraut написал(а):
Это файл форм
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
<link href="../style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" name="form1" method="post" action="add.php">
<p class="videleniy_text">1. Введите свои данные.</p>
<table width="95%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="31%"><label>Ваше имя*:
<input type="text" name="main_name" id="main_name" />
</label></td>
</tr>
</table>
<p class="videleniy_text">2. При надобности измените текст письма.</p>
<p>
<label>Тема письма*:<br />
<input name="tems" type="text" id="tems" value="".name."! Хороший сайт. Настоятельно рекомендую." size="100" maxlength="100" />
</label>
</p>
<label>Текст письма*:<br />
<textarea name="text" cols="100" rows="17" id="text">Привет, %FRIENDS_NAME%.
Это %NAME%, хочу сообщить тебе об интересном сайте.
Возможно ты найдешь его полезным, там предлагаются
на бесплатное скачивание видеоуроки по раскрутке.
Вот ссылка:
%LINK%
Чтобы скачать уроки, введи свое имя и e-mail в форму
ниже на странице. Ссылка с доступом прейдет к тебе
на почту в течение нескольких минут.
Удачи!
%NAME%</textarea>
<br />
<br />
Внимание! Не изменяйте и не удаляйте маркеры %FRIENDS_NAME%, %NAME%, %LINK%,<br />
которые автоматически будут заменены на ваше имя, имя друга и адрес сайта.<br />
<br />
<span class="videleniy_text">3. Укажите имя и e-mail адрес знакомого<br />
</span>
<br />
</label>
<table width="95%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="19%"><label>Имя*:<br />
<input type="text" name="name" id="name" />
</label></td>
<td width="81%"><label>E-mail*:<br />
<input type="text" name="mail" id="mail" />
</label></td>
</tr>
</table>
<label><br />
<br />
<br />
</label>
<p>
<label>
<input type="submit" name="submit" id="submit" value="отправить >>" />
</label>
</p>
</form>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
<link href="../style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" name="form1" method="post" action="add.php">
<p class="videleniy_text">1. Введите свои данные.</p>
<table width="95%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="31%"><label>Ваше имя*:
<input type="text" name="main_name" id="main_name" />
</label></td>
</tr>
</table>
<p class="videleniy_text">2. При надобности измените текст письма.</p>
<p>
<label>Тема письма*:<br />
<input name="tems" type="text" id="tems" value="".name."! Хороший сайт. Настоятельно рекомендую." size="100" maxlength="100" />
</label>
</p>
<label>Текст письма*:<br />
<textarea name="text" cols="100" rows="17" id="text">Привет, %FRIENDS_NAME%.
Это %NAME%, хочу сообщить тебе об интересном сайте.
Возможно ты найдешь его полезным, там предлагаются
на бесплатное скачивание видеоуроки по раскрутке.
Вот ссылка:
%LINK%
Чтобы скачать уроки, введи свое имя и e-mail в форму
ниже на странице. Ссылка с доступом прейдет к тебе
на почту в течение нескольких минут.
Удачи!
%NAME%</textarea>
<br />
<br />
Внимание! Не изменяйте и не удаляйте маркеры %FRIENDS_NAME%, %NAME%, %LINK%,<br />
которые автоматически будут заменены на ваше имя, имя друга и адрес сайта.<br />
<br />
<span class="videleniy_text">3. Укажите имя и e-mail адрес знакомого<br />
</span>
<br />
</label>
<table width="95%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="19%"><label>Имя*:<br />
<input type="text" name="name" id="name" />
</label></td>
<td width="81%"><label>E-mail*:<br />
<input type="text" name="mail" id="mail" />
</label></td>
</tr>
</table>
<label><br />
<br />
<br />
</label>
<p>
<label>
<input type="submit" name="submit" id="submit" value="отправить >>" />
</label>
</p>
</form>
</body>
</html>
Спустя 2 минуты, 9 секунд (20.12.2009 - 21:21) vertraut написал(а):
Это обработчик!
<?php
include ("blocks/bd.php"); /*Соединяемся с базой*/
/*echo $_POST['name'];
echo $_POST['mail'];*/
if (isset($_POST['name'])) {$name = $_POST['name']; if ($name == '') {unset($name);}}
if (isset($_POST['mail'])) {$mail = $_POST['mail']; if ($mail == '') {unset($mail);}}
if (isset($_POST['main_name'])) {$main_name = $_POST['main_name']; if ($main_name == '') {unset($main_name);}}
if (isset($_POST['main_mail'])) {$main_mail = $_POST['main_mail']; if ($main_mail == '') {unset($main_mail);}}
if (isset($_POST['tems'])) {$tems = $_POST['tems']; if ($tems == '') {unset($tems);}}
if (isset($_POST['text'])) {$text = $_POST['text']; if ($text == '') {unset($text);}}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
</head>
<body>
<?php
if (isset($name) && isset($mail))
{
$name=trim($name);
$mail=trim($mail);
$main_name=trim($main_name);
$main_mail=trim($main_mail);
$tems=trim($tems);
$text=trim($text);
$name = stripslashes($name);
$mail = stripslashes($mail);
$main_name = stripslashes($main_name);
$main_mail = stripslashes(main_mail);
$tems = stripslashes($tems);
$text = stripslashes($text);
$address = "$mail";
$subject = "$tems";
$message = "$text";
mail($address,$subject,$message,"Content-type:text/plain; Charset=windows-1251\r\n");
/* Здесь пишем что можно заносить информацию в базу */
$result = mysql_query ("INSERT INTO users (name, mail) VALUES ('$name', '$mail')");
if ($result == 'true') {echo "<p>Вы успешно отправили письмо</p>";}
else {echo "<p>Вы не отправили письмо!</p>";}
}
else
{
echo "<p>Вы ввели не всю информацию, поэтому письмо не отправилось.</p>";
}
?>
</body>
</html>
<?php
include ("blocks/bd.php"); /*Соединяемся с базой*/
/*echo $_POST['name'];
echo $_POST['mail'];*/
if (isset($_POST['name'])) {$name = $_POST['name']; if ($name == '') {unset($name);}}
if (isset($_POST['mail'])) {$mail = $_POST['mail']; if ($mail == '') {unset($mail);}}
if (isset($_POST['main_name'])) {$main_name = $_POST['main_name']; if ($main_name == '') {unset($main_name);}}
if (isset($_POST['main_mail'])) {$main_mail = $_POST['main_mail']; if ($main_mail == '') {unset($main_mail);}}
if (isset($_POST['tems'])) {$tems = $_POST['tems']; if ($tems == '') {unset($tems);}}
if (isset($_POST['text'])) {$text = $_POST['text']; if ($text == '') {unset($text);}}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
</head>
<body>
<?php
if (isset($name) && isset($mail))
{
$name=trim($name);
$mail=trim($mail);
$main_name=trim($main_name);
$main_mail=trim($main_mail);
$tems=trim($tems);
$text=trim($text);
$name = stripslashes($name);
$mail = stripslashes($mail);
$main_name = stripslashes($main_name);
$main_mail = stripslashes(main_mail);
$tems = stripslashes($tems);
$text = stripslashes($text);
$address = "$mail";
$subject = "$tems";
$message = "$text";
mail($address,$subject,$message,"Content-type:text/plain; Charset=windows-1251\r\n");
/* Здесь пишем что можно заносить информацию в базу */
$result = mysql_query ("INSERT INTO users (name, mail) VALUES ('$name', '$mail')");
if ($result == 'true') {echo "<p>Вы успешно отправили письмо</p>";}
else {echo "<p>Вы не отправили письмо!</p>";}
}
else
{
echo "<p>Вы ввели не всю информацию, поэтому письмо не отправилось.</p>";
}
?>
</body>
</html>
Спустя 1 минута, 3 секунды (20.12.2009 - 21:22) vertraut написал(а):
Как мне %NAME% заменить на $main_name????
Ну и все остальное!
Ну и все остальное!
Спустя 4 минуты, 12 секунд (20.12.2009 - 21:27) Romms написал(а):
так бы сразу...(только весь код страницы не надо вставлять)
можно так
можно так
$text=preg_replace('/%FRIENDS_NAME%/s', $friends_name, $text);
$text=preg_replace('/%LINK%/s', $link, $text);
...
Спустя 2 минуты, 1 секунда (20.12.2009 - 21:29) vertraut написал(а):
а можно с комментарием сточки?
Спустя 1 минута, 19 секунд (20.12.2009 - 21:30) Romms написал(а):
Цитата |
а можно с комментарием сточки? |
непонял... что комментировать?
$text - тут твой тест значения в котором нужно заменить
Спустя 50 секунд (20.12.2009 - 21:31) vertraut написал(а):
ну вот эту строку
$text=preg_replace('/%LINK%/s', $link, $text);
$text=preg_replace('/%LINK%/s', $link, $text);
Спустя 3 минуты, 6 секунд (20.12.2009 - 21:34) Romms написал(а):
Цитата |
mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] ) Searches subject for matches to pattern and replaces them with replacement . |
Проще:
функция ищет %LINK% заменяет на $link в строке $text
Спустя 4 минуты, 30 секунд (20.12.2009 - 21:38) vertraut написал(а):
Огромное спасибо!!!
можете еще помочь???
Мне нужно чтоб данное письмо отправлялось нескольким адресатам. Причем количество адресатов заранее неизвестно. Как реализовать отправку нескольким адресатам и добавление или удаления форм?
можете еще помочь???
Мне нужно чтоб данное письмо отправлялось нескольким адресатам. Причем количество адресатов заранее неизвестно. Как реализовать отправку нескольким адресатам и добавление или удаления форм?
Спустя 2 минуты, 57 секунд (20.12.2009 - 21:41) Romms написал(а):
Цитата |
количество адресатов заранее неизвестно |
а так можно?

Спустя 2 минуты, 38 секунд (20.12.2009 - 21:44) Romms написал(а):
Вот тебе код
функция getAllEmails(); выдает массив нужных тебе мыл... она не стандартная, её надо самому писать
$emailList = getAllEmails();
foreach($emailList as $oneEmail){
sendmail($oneEmail, $spamObject, $spamBody);
}
функция getAllEmails(); выдает массив нужных тебе мыл... она не стандартная, её надо самому писать

Спустя 2 минуты, 51 секунда (20.12.2009 - 21:47) vertraut написал(а):
да, так было сделано на одном сайте, и там можно было нажать на "+" добавить форму, нажать на "-" убрать форму
<tr><td colspan="2" align="center"><h3>3. Введите имена и e-mail адреса друзей:</h3></td></tr>
<tr><td colspan="2" align="center">
<table border="0" width="330">
<TBODY id="erows">
<tr><td>Имя<span class="require">*</span></td><td>E-mail<span class="require">*</span></td><td width="20"> </td></tr>
<tr id="u_1"><td><input type="text" name="u_name[]"/></td><td><input type="text" name="u_mail[]"/></td><td> </td></tr>
<tr id="u_2"><td><input type="text" name="u_name[]"/></td><td><input type="text" name="u_mail[]"/></td><td> </td></tr>
<tr id="u_3"><td><input type="text" name="u_name[]"/></td><td><input type="text" name="u_mail[]"/></td><td> </td></tr>
<tr id="u_4"><td><input type="text" name="u_name[]"/></td><td><input type="text" name="u_mail[]"/></td><td><input type="button" value="-" onClick="del_row(4, event)" class="hand" title="Убрать" /></td></tr>
<tr id="u_5"><td><input type="text" name="u_name[]"/></td><td><input type="text" name="u_mail[]"/></td><td><input type="button" value="-" onClick="del_row(5, event)" class="hand" title="Убрать" /></td></tr>
</TBODY>
</table>
<br /><input type="button" id="add_row" value="Добавить друга" /></td></tr>
Спустя 1 минута, 6 секунд (20.12.2009 - 21:48) vertraut написал(а):
Ну и соответственно на все эти email отправлялись письма, и в каждое письмо подставлялись свои данные!
Спустя 5 минут, 55 секунд (20.12.2009 - 21:54) Romms написал(а):

Как раз то известно(на время отправки письма)
Код "убрать, додать" поле, думаю сам напишешь а суть предложенного кода не меняется...
$emailList = $_POST[u_mail];
foreach($emailList as $oneEmail){
mail($oneEmail,$subject,$message,"Content-type:text/plain; Charset=windows-1251\r\n");
}
Спустя 5 минут (20.12.2009 - 21:59) vertraut написал(а):
Нет, я с php мало знаком, может вы мне поможете?
Спустя 4 минуты, 32 секунды (20.12.2009 - 22:03) Romms написал(а):
Цитата |
Нет, я с php мало знаком, может вы мне поможете? |
Ты про это:
Цитата |
Код "убрать, додать" поле, думаю сам напишешь а суть предложенного кода не меняется... |
так это JavaScript и другая тема

Спустя 2 минуты (20.12.2009 - 22:05) vertraut написал(а):
А понятно! Так Вы не сможете мне помочь?
Спустя 37 секунд (20.12.2009 - 22:06) Romms написал(а):
новая тема... создавай!