|
|
|
начал анализировать эту тему по гугле и решил проконсультироваться.
Решений различных весьма много, но может кто-то уже сталкивался с использованием такого скрипта, с возможными проблемами? |
|
|
|
|
|
Ну вот у меня скрипт не шлет мне письма на ящики вида имя@домен. Зато на все бесплатные типа майл, гмайл и т.д. - без проблем |
|
|
|
|
|
|
docker, риспект! Совсем забыл про этот ресурс. |
|
|
|
|
|
Нашел тут скрипт один.
Код: |
Tired of idiots and imbeciles who creates unsecure php-code and lets spammers abuse mail()? Try this dirty trick:
With auto_prepend, prepend this file:
<?php
// You need to install pecl-module, runkit.
dl("runkit.so");
// We could rename the function, but that currently makes my apache segfault, but this works :-P
runkit_function_copy ( "mail","intmail" );
runkit_function_remove( "mail" );
function mail( $to, $subject, $message, $additional_headers = null, $additional_parameters = null ) {
$___domain = $_SERVER['SERVER_NAME'];
$fp = fopen("/tmp/my_super_mail_logg", "a");
fwrite( $fp, date("d.m.y H:i:s") . " " . $___domain . ": $to / $subject\n");
fclose( $fp );
return intmail( $to, $subject, $message, $additional_headers, $additional_parameters );
}
?>
You probably shouldn't log to /tmp, or any other place as the webserver-user, see syslog-functions ;)
And of course you can manipulate the different parameters, like adding custom headers to each email (For instance; "X-From-Web: {$_SERVER['SERVER_NAME']}")..
|
Пока не могу никак догнать, шо за зверь такой: pecl-module, runkit?
Как и куда его ставят? Поиск по гугле особой радости не доставил. |
|
|
|
|
|
PECL (PHP Extension Community Library) — это репозиторий модулей для PHP, написанных на C, доступных через систему пакетов PEAR. PECL был создан когда возникла проблема удаления некоторых модулей из стандартной поставки PHP. Модули PECL разработаны в соответствии со стандартами кодирования которые приняты командой разработчиков PHP.
http://handy-notes.blogspot.com/2007/06/pecl-php.html |
|
|
|
|
|
ъъъ писал(а): |
Пока не могу никак догнать, шо за зверь такой: pecl-module, runkit?
Как и куда его ставят? Поиск по гугле особой радости не доставил.
|
жжошь
pecl.php.net - первая ссылка |
|
|
|
|
|
Так вроде готовые скрипты для рассылок существуют. Почему бы ими не воспользоваться? |
|
|
|
|
|
Цитата: |
Так вроде готовые скрипты для рассылок существуют. Почему бы ими не воспользоваться?
|
Иногда требуется встроить отправку мыла в свой скрипт. |
|
|
|
|
|
Писатель писал(а): |
Так вроде готовые скрипты для рассылок существуют. Почему бы ими не воспользоваться?
|
Цитата: |
Tired of idiots and imbeciles who creates unsecure php-code and lets spammers abuse mail()?
|
|
|
|
|
|
|
brush писал(а): |
жжошь
pecl.php.net - первая ссылка
|
найти-то нашел..
не пойму с какой стороны "включить"!
ну ни разу не приходилось...
потом плюнул на это дело, взял вот этот скрипт:
Код: |
<form name="frmsendmail" method="post" action="" onSubmit="return ValidationForm()">
<table width="100%" border="0">
<tr>
<td width="33%" align="right" class="text">To :
<td width="67%"><input name="txtEmailto2" type="text" class="input" id="txtEmailto22" size="30" maxlength="100">
</tr>
<tr>
<td align="right" class="text">From :
<td><input name="txtEmailfrm2" type="text" class="input" id="txtEmailfrm22" size="30" maxlength="100">
</tr>
<tr>
<td align="right" class="text">Subject :
<td><input name="txtSub2" type="text" class="input" id="txtSub22" size="30" maxlength="100">
</tr>
<tr>
<td align="right" class="text">Mesage(body) :
<td><textarea name="txtMsg" cols="50" rows="10" class="input" id="textarea"></textarea>
</tr>
<tr>
<td align="right"><input name="hidSubmit" type="hidden" id="hidSubmit" value="true">
<input name="Submit" type="submit" class="input" value="Send">
<td><input name="Submit2" type="reset" class="input" value="Reset">
</tr>
</table>
</form>
|
вставил его в index.html
результат: сервер выдают ошибку, что типа метод POST в данном случае не поддерживается.
и еще для данного примера не понимаю как связать эту форму для отправки и вот этот скрипт:
Код: |
<?php
//Check whether the submission is made
if(isset($hidSubmit)){
//Declarate the necessary variables
$mail_to=$txtEmailto;
$mail_from=$txtEmailfrm;
$mail_sub=$txtSub;
$mail_mesg=$txtMsg;
//Check for success/failure of delivery
if(mail($mail_to,$mail_sub,$mail_mesg,"From:$mail_from/r/nReply-to:$mail_from"))
echo "<span class='textred'>E-mail has been sent successfully from $mail_sub to $mail_to</span>";
else
echo "<span class='textred'>Failed to send the E-mail from $mail_sub to $mail_to</span>";
}
?>
|
Вобщем буду очень благодарен за небольшое (хотя бы) обяснение по использованию runkit, ну или по правильной установке этой формы со скриптом уведомления. |
|
|
|
|
|
|
|