Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 10.10.2014
Сообщений: 32

Использование функции mail()

09.07.2016, 10:05. Показов 1374. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Использую mail() для отправки сообщений, но возникла небольшая проблема.

так работает:
PHP
1
2
      $message_send="Received mail from";
      mail("$address", "You have a mail", $message_send);
а так не работает:
PHP
1
2
      $message_send="Received mail from sait.dom";
      mail("$address", "You have a mail", $message_send);
Насколкьо понял, ошибка идет из-за точки. Пробовал по различному использовать кавычки, присоединения и т.д., но письмо не получаю. Как решить данную задачку?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.07.2016, 10:05
Ответы с готовыми решениями:

Использование RegEx для генерации e-mail студента
Пусть каждому студенту при поступлении в университет дается E-mail: <Первая буква имени>.<Первая буква отчества>.<Фамилия...

Программно поиск сообщения в e-mail от @xxx.xxx. С аккаунта любого e-mail сервиса, gmail, ya, mail и т.п
в программе нужно авторизоваться в мыле, найти сообщение от @xxxx.xxx, и получить содержание этого письма. Как реализовать проще и надежнее?

Delphi, визуальное программирование, функции, использование несколько объектов через функции
Здорово, ребята. Вот когда писал программку, возникла такая мысль - можно ли использовать одну и туже функцию к разным объектам? Вот код...

20
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
09.07.2016, 15:35
В "$address" кавычки не нужны, хотя и с ними тоже ошибки не будет.
Цитата Сообщение от kapa57 Посмотреть сообщение
Насколкьо понял, ошибка идет из-за точки.
Нет, не из-за точки.
Оба варианта работают.
Чего-то Вы не договариваете.
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
09.07.2016, 17:42
Может из-за сайта не пропускает фильтр спама.
0
0 / 0 / 0
Регистрация: 10.10.2014
Сообщений: 32
09.07.2016, 18:33  [ТС]
Цитата Сообщение от Пифагор Посмотреть сообщение
Чего-то Вы не договариваете.
Что же я не договариваю?) 2 варианта пробую, один приходит письмо на втором нет. Все выше в плане отправки сообщения стоит.

Цитата Сообщение от Пифагор Посмотреть сообщение
В "$address" кавычки не нужны, хотя и с ними тоже ошибки не будет.
как проба в поиске ошибки были вставлены кавычки.

всего лишь комментирую одну переменную, потом вторую... разница есть в неприеме
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
09.07.2016, 20:20
Цитата Сообщение от kapa57 Посмотреть сообщение
всего лишь комментирую одну переменную, потом вторую
Комментируете чем? Кавычками?))
Цитата Сообщение от kapa57 Посмотреть сообщение
разница есть в неприеме
Вот тут поподробнее, если не сложно...
0
0 / 0 / 0
Регистрация: 10.10.2014
Сообщений: 32
09.07.2016, 23:13  [ТС]
немного неверно выразился.
//$message_send="Received mail from";
$message_send="Received mail from sait.dom";
вот таким образом комменчу, соответственно меняю местами коммент. ничего более не меняется. в случае что стоит сейчас, письмо не приходит, если поставить иначе коммент, то письмо приходит. в папке со спамом письма тоже нет. ошибок не выдается никаких.
так же обработка была:
PHP
1
if (mail($address, $sub, $messaga, $from))
т.е. скрипт считает что все норм, письмо отправлено.

может дело в хостере? он где-то сервером не отправляет?
0
 Аватар для Laroux
172 / 167 / 75
Регистрация: 21.11.2014
Сообщений: 1,490
10.07.2016, 00:12
kapa57, обязательно отравлять письмо без авторизации?
0
0 / 0 / 0
Регистрация: 10.10.2014
Сообщений: 32
10.07.2016, 00:14  [ТС]
Laroux, да в принципе разницы нет. хотя чем это может влиять на отправляемую переменную ?
0
 Аватар для Laroux
172 / 167 / 75
Регистрация: 21.11.2014
Сообщений: 1,490
10.07.2016, 00:17
kapa57, да потому что отправлять письма через опенрелей - это лотерея сейчас. Одно дошло, второе и третье нет, четвертое опять пришло и так далее..
возьмите этот класс и забудьте о своей проблеме как о страшном сне
0
0 / 0 / 0
Регистрация: 10.10.2014
Сообщений: 32
10.07.2016, 00:27  [ТС]
Хмм, можно попробовать его, но несколько громоздко, мне кажется, использовать данный класс только для простой отправки письма, это как использовать стенобитную машину для выбивания одного кирпича.
Но все равно спасибо, как вариант может и будет решение, если не додумаю чего другого.
0
 Аватар для Laroux
172 / 167 / 75
Регистрация: 21.11.2014
Сообщений: 1,490
10.07.2016, 00:32
kapa57, а я повторюсь: отправка через mail() крайне нежелательна. Большинство почтовиков тебя будут отсеивать, особенно, если писем много да еще плюс и ссылки в письме.
А где не заблочит почтовик - так заблочит почтовый клиент. В общем совершенно ненадежно.
Насчет громоздкости: это копеечные затраты. Тебе НИЧЕГО не надо нагружать ничем, кроме файла класса и вставки его кода к себе в скрипт.
Да, строк несколько поболее, но их даже писать не надо - возьми из примера и всех делов
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
10.07.2016, 00:47
Laroux, читал, но так и не понял (может, не внимательно читал): какое принципиальное отличие этого класса от функции mail()???
За счет чего достигается 100% доставка?

Добавлено через 1 минуту
PS
Лично у меня НИКОГДА не было проблем с получением сообщений адресатами через mail().
0
 Аватар для Laroux
172 / 167 / 75
Регистрация: 21.11.2014
Сообщений: 1,490
10.07.2016, 00:49
Пифагор, да, там можно и без авторизации отправлять (типа как функция mail(), но с бонусами - упрощение с аттачами и все такое). Но я не дописал (каюсь), что этим классом очень просто (что мне и нравтся) отправлять письма через smtp с авторизацией

Добавлено через 36 секунд
Цитата Сообщение от Пифагор Посмотреть сообщение
Лично у меня НИКОГДА не было проблем с получением сообщений адресатами через mail().
может ты об этом просто не знаешь?
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
10.07.2016, 00:51
Цитата Сообщение от Laroux Посмотреть сообщение
может ты об этом просто не знаешь?
Знаю
0
 Аватар для Laroux
172 / 167 / 75
Регистрация: 21.11.2014
Сообщений: 1,490
10.07.2016, 01:00
Пифагор, тогда Вы "темните". Скорее всего Вы юзаете mail() с какими-то фишечками. Так же?

Добавлено через 5 минут
additional_headers юзаете?
кроме того, адрес отправителя не указан, поэтому берется дефолтный адрес сервера. Этот адрес надо использовать реально существующий, так как многие почтовики при получении письма проверяют его существование.
Плюс ко всему сервер, с которого производится отправка письма, может числиться в блэклистах и\или иметь обратного dns, что учитывается почтовиком при оценке письма как спам

Добавлено через 46 секунд
ну и собственно еще раз вопрос: нах эти грабли, если можно просто отправить письмо через smtp и не думать ни о чем
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
10.07.2016, 01:01
Нет. Никаких фишек.
Просто все, что я писал, я же и сопровождаю (поменять там чего или дописать) и есть бы что не работало, то я бы об этом узнал бы первым
0
 Аватар для Laroux
172 / 167 / 75
Регистрация: 21.11.2014
Сообщений: 1,490
10.07.2016, 01:04
Пифагор, я не знаю, как это прокомментировать. Честно.
Но то, что описанные выше мной проблемы существуют - это факт

Добавлено через 53 секунды
Я лично давным-давно отказался от этой функции и нигде ее не юзаю
0
0 / 0 / 0
Регистрация: 10.10.2014
Сообщений: 32
10.07.2016, 11:04  [ТС]
Laroux, воспользовался классом. Пользоваться удобно, согласен, не надо дополнительно заморачиваться с отправкой кириллицы.
Но данный класс так же не решил проблему отправки сообщения с указанием сайта, откуда идет сообщение.
Я попробовал поменял адрес приемки почты на другой - все отлично приходит. Короче говоря, mail.ru не принимает такое сообщение, gmail принимает без проблем.
Вот и вся проблема оказалась.
0
 Аватар для Laroux
172 / 167 / 75
Регистрация: 21.11.2014
Сообщений: 1,490
10.07.2016, 21:44
kapa57, $m->smtp_on(); задействовали?
0
0 / 0 / 0
Регистрация: 10.10.2014
Сообщений: 32
10.07.2016, 22:07  [ТС]
нет, не использовал.
PHP
1
2
3
4
5
6
7
8
9
    
include "inc/libmail.php";  // вставляем файл с классом
$m= new Mail;           // начинаем
$m->From ("$email_adm");    // от кого отправляется почта
$m->To ("$address");        // кому адресованно
$m->Subject ("$sub");           // тема письма
$m->Body ("$mes");          // текст письма
$m->Priority(3) ;           // приоритет письма
$m->Send();             // отправка
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.07.2016, 22:07
Помогаю со студенческими работами здесь

Кодировка в функции mail
При загрузке данного скрипта на платный хостинг, приходят письма в абракатабре, хоть и указал ютф8 ,что можно сделать? <?php ...

Работа функции mail()
Будет ли отправлять функция майл сообщения на реальный майл если ты используешь денвер . Если нет то как это реализовать на локальном...

Html в функции mail
Доброго времени суток. Скажу сразу php я не знаю. Нашел в инете скрипт и подключаю его к своей готовой форме. При тестировании вышло что...

функции mail() в PHP
От какого эл.адреса почты вообще посылаются сообщения из скрипта через эту функцию? Там что ли любой адрес вбить можно?!

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru