Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.08.2011, 23:50   #1
Dmitry1983
Пользователь
 
Регистрация: 24.06.2011
Сообщений: 80
По умолчанию mail()

доброй ночи... и все же никак до меня не дойдет как отправить письма со своего сайта скажем на 4 адреса (100 адресов?) вот в упрощенном формате делаю так:

PHP код:
$query "SELECT uid, tip, name, nas, email FROM geo_test WHERE uid <15 ORDER BY uid";

$result mysql_query($query);
echo 
mysql_num_rows($result);
echo 
"<br>";
echo 
"<form method=POST action='mail2.php'>";
while (
$f=mysql_fetch_array($result)){
echo 
"<td> uid: $f[0] имя: $f[2], население: $f[3], e-mail: $f[4] <input type=checkbox name=Arr[] value=".$f[4]." >&nbsp;отметить</td><br>";
}
echo 
'<tr><td><input type="submit" name="buy" value="Отправить"></td></tr>';
echo 
"</form>"
тут отмечаю чекбоксы и перехожу в форму...

файл mail2.php

PHP код:
<?php
$to
=$_POST['Arr'];

if (isset(
$to)){
$to2=implode("; ",$to);
}
?>

<form action=''>
  <p>Кому:</p>
  <p>
  <input type="text" name="who" value="<?=$to2?>
  " size="100" />
    <br />Текст письма:</p>
  <p>
  <textarea cols="100" name="body" rows="20"></textarea>
    
    <br /><input type="submit" value="Отправить письмо"/>
  </p>
</form>

<?php
$komu
=$_POST['who'];
$telo=$_POST['body'];
$ot="admin@moisite.ru";
$subject="Привет";

mail($to2$subject$telo$ot);
?>
выборка делается вроде верно... в поле кому появляется (например): admin@mail.ru; admin@yandex.ru;

в чем беда?? причем мне надо на внешнем хостинге настроить.. на внутреннем вроде фурычит в tmp папке появляется запись.

вот что в FAQ написано:

Первый и главный момент при отправке письма - путь к почтовой программе. В качестве почтового демона у нас установлен Exim, путь к нему, который Вы должны использовать в скриптах - /usr/sbin/sendmail -t.

При использовании Perl отправка письма осуществляется вызовом /usr/sbin/sendmail и печатью в поток. Заголовок From: указывается явно. При использовании PHP письмо можно отправить вышеописанным образом, или, что много проще, используя функцию mail(). Во втором случае заголовок From: указывается в четвертом параметре функции среди других необязательных заголовков.

сорри что много, но уперся в стену(((
Dmitry1983 вне форума Ответить с цитированием
Старый 16.08.2011, 01:15   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от Dmitry1983 Посмотреть сообщение
в поле кому появляется (например): admin@mail.ru; admin@yandex.ru;
Согласно мануалу, адреса получателей должны быть разделены запятыми - а не точками с запятой, как у вас:
Цитата:
Можно специфицировать несколько получателей, разделив запятой адреса
mail():
Цитата:
Receiver, or receivers of the mail.

The formatting of this string must comply with » RFC 2822. Some examples are:

user@example.com
user@example.com, anotheruser@example.com
User <user@example.com>
User <user@example.com>, Another User <anotheruser@example.com>
Возможно, причина в этом.
Andkorol вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Mail.Ru Денис Коржанов Безопасность, Шифрование 9 20.02.2009 14:46
e-mail Rio309 Работа с сетью в Delphi 8 12.02.2008 11:23
E mail Максим-2 Безопасность, Шифрование 3 12.07.2007 22:12