Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   отправка письма на почту (php) (https://javascript.ru/forum/server/45193-otpravka-pisma-na-pochtu-php.html)

cyber 18.02.2014 16:11

отправка письма на почту (php)
 
Нужно сделать отправку письма на почту ( с вложениями), но возникли некоторые вопросы.
1. какой SMPT сервер использует функция mail.
2. какие есть удобные либы для отправки почты.
3. как нужно проверять строки передаваемые в пхп, перед отправкой на почту (в базу нечего не пишет, sql иньекция исключаеться).

animhotep 18.02.2014 16:13

1. зависит от настроек сервака
2. mail)

danik.js 18.02.2014 16:40

Цитата:

Сообщение от cyber
как нужно проверять строки передаваемые в пхп

Если HTML пропускать не нужно, то htmlspecialchars()

cyber 18.02.2014 17:24

danik.js, animhotep, спасибо.
не могу понять почему не работает
$subject = htmlspecialchars($_POST["subject"]);
$backMAil = htmlspecialchars($_POST["user_mail"]);

if(!$subject || !$backMAil) {
	header("Status: 400 Неверный запрос");
	exit();
}

danik.js 18.02.2014 17:40

Цитата:

Сообщение от cyber
не могу понять почему не работает

А что тут должно работать?

cyber 18.02.2014 17:43

danik.js, должно возвращать статус 400 в заголовке, если переданы пустые строки в обход проверки в браузере, но выдает ошибку .
Цитата:

Warning: Cannot modify header information - headers already sent by (output started at E:\OpenServer\domains\localhost\test\sendMail.php: 1) in E:\OpenServer\domains\localhost\test\sendMail.php on line 6
гуглил эту ошибку, на сколько я понял бывает она из за вывода чего ли бо перех header или из за html, но не того , не того у меня нет.

cyber 18.02.2014 17:51

все разобрался, open server какого то хрена сбросил настройки php.ini

cyber 18.02.2014 19:38

еще вопрос про отправку файлов. файл загруженный через форму находяться в temp папке на сервере пока не выполниться пхп скрипт (я прав?) , и что бы получить этот файл для отпарвки нужно сделать

fopen($_FILES[$filename]["tmp_name"])

и уже потом работать с файлом?

danik.js 18.02.2014 20:23

Че ты с файлом делать собрался?

cyber 18.02.2014 20:35

Цитата:

Сообщение от danik.js
Че ты с файлом делать собрался?

на почту отправлять. но перед отправкой его нужно в base64 что бы в MIME отправить.


Часовой пояс GMT +3, время: 00:51.