Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Отправка почты

Сообщения:  [1-10]    [11-20]  [21-22] 

 
 автор: Кузнецов М.В.   (11.10.2004 в 23:26)   письмо автору
 
   для: broker   (11.10.2004 в 10:20)
 

Ошибки нет.
Переменная msg - это переменная, которая содержит сообщение. heаders - это массив, содержащий тело собщения дополнительных заголовков.
Для того, чтобы сообщить функции доп.заголовки надо после переменной, содержащей тело сообщения (в нашем случае $msg) добавить перменную, содержащую заголовки. К примеру:
<?php
mail
($this->to$this->subject$this->msg,implode("\r\n"$this->headers)))
?>

   
 
 автор: Кузнецов М.В.   (11.10.2004 в 23:15)   письмо автору
 
   для: broker   (11.10.2004 в 10:25)
 

Адрес отправителя у Вас не получается изменить потому что в этом скрипте это в принципе нельзя сделать. Для того, чтобы ввести эту возможность, допишите поле from, вставив его через headers. Мне это было не надо, поэтому я эту возможность и не ввел.

   
 
 автор: broker   (11.10.2004 в 10:25)   письмо автору
 
   для: Кузнецов М.В.   (10.10.2004 в 16:43)
 

Думаю поэтому у меня не получался изменить адрес отправителья

http://softtime.ru/scripts/sendmessage.php

   
 
 автор: broker   (11.10.2004 в 10:20)   письмо автору
 
   для: Кузнецов М.В.   (10.10.2004 в 16:43)
 

Мне кажется у вас в функции сенд ошибка

  function send()
  /* метод отправки сообщения */
  {
     if(!$this -> check_fields()) return true;
     if (mail($this -> to, htmlspecialchars( stripslashes(trim($this -> subject))),
        htmlspecialchars(stripslashes(trim($this -> msg)))))
     {
        return true;
     }else{
        return false;
     } 
  }
}


Тут mail($this -> to, htmlspecialchars( stripslashes(trim($this -> subject))),
htmlspecialchars(stripslashes(trim($this -> msg)))) последная переменная должно быть не $this -> msg, а $this -> headers

   
 
 автор: Кузнецов М.В.   (10.10.2004 в 16:43)   письмо автору
 
   для: broker   (09.10.2004 в 22:37)
 

Это просто тестовый скрипт для тестирования класса, извиняюсь за тавтологию. Т.е. просто пример на классы. В реале (если уж только не совсем большое и расширяемое приложение, которое сопровождает несколько человек) лучше все делать без них (без классов) и просто использовать функцию mail.

>Тут написано дважды $mail -> msg = "testing..."; зачем это
>или это ошибка ?
Это - оплошность.
>Где тут имя отправителья или его е-майл.
>Я протестировал этот скрипт и мне пришел письмо с е-майлом
>хост сервера а у меня другой домен ( Как можно изменить
>это.
В этом скрипте поле from отсутствует, поэтому Вам пришло, в этом поле то, что подставляет сервер. Добавьте поле from в этот скрипт, и все будет как Вам надо.

   
 
 автор: Кузнецов М.В.   (10.10.2004 в 16:38)   письмо автору
 
   для: broker   (09.10.2004 в 23:25)
 

Можно, без проблем - просто подставляете нужное значение в поле from.

   
 
 автор: cheops   (09.10.2004 в 23:33)   письмо автору
 
   для: broker   (09.10.2004 в 23:25)
 

Нет, от чего же... для этого достаточно передать функции mail соотвествующий заголовк:
mail("web-admin@mail.ru", "test", "testing...","From: Someone <someone@mail.com>\n");


http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=442&page=1

   
 
 автор: broker   (09.10.2004 в 23:25)   письмо автору
 
   для: cheops   (09.10.2004 в 23:12)
 

Я так понел что не как е-майл отправитель изменить нельзя , всегда будет показаться е-майл хост сервера ?

   
 
 автор: cheops   (09.10.2004 в 23:12)   письмо автору
 
   для: broker   (09.10.2004 в 22:37)
 

Здесь лучше воспользоваться функцией mail() на прямую.
<?php
  mail
("web-admin@mail.ru""test""testing...");
?>


PS Лично я считаю, что в PHP практически нет задач для использования которых требуется объектно-ориентированных подход (хотя сам его очень люблю :) - это удел больших серьёзных библиотек и систем предназначенных для большой команды разработчиков. PHP ориентирован всё-таки на "быстрый" код, который часто подвергается изменениям и над которым работает небольшое число программистов.

   
 
 автор: broker   (09.10.2004 в 22:37)   письмо автору
 
   для: cheops   (13.08.2004 в 11:14)
 

У меня хост юниксовый и эта функция работает. Но вот Я толком не разобрался в вашем Sendmail-е . Тут не разобратся что где :
<?php
    
include("mail_class.php");
    
$mail = new Mail();
    
$mail -> to "web-admin@mail.ru";
    
//сюда подставляется реальный адрес
    
$mail -> subject "test";
    
$mail -> msg "testing...";
    
$mail -> msg "testing...";
    
$mail -> rigorous_email_check 0;
    if(
$mail->send()){
        echo(
"Success");
    }else{
        echo(
"error");
    }
    echo(
"<br>");
    echo(
$mail -> msg);
?>


Тут написано дважды $mail -> msg = "testing..."; зачем это или это ошибка ?
Где тут имя отправителья или его е-майл.
Я протестировал этот скрипт и мне пришел письмо с е-майлом хост сервера а у меня другой домен ( Как можно изменить это. И еще мне дали с хостом SMTP доступ можно использовать его ?

   

Сообщения:  [1-10]    [11-20]  [21-22] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования