TIPS OF WEB: php для самых маленьких Sevranty Спецвыпуск Xakep, номер #029, стр. 029-114-3 $msg .= " \n"; $msg .= "------------------------------------------\n"; $msg = convert_cyr_string($msg,'w','k'); if ($message=="Incognito (none@email.me):") { $send = 'bad'; } else { $topic = "COMMENT. feedback"; $email="comment@domen.ru"; mail($email, $topic, $msg, "From: comment@domen.ru"); $send = 'ok'; } $goto = 'Location: '.$urlback.'?send='.$send; Header($goto); ?> Здесь мы увидим много интересного и непонятного %-). Для начала узнаем дату, когда же нам умудрился написать этот чел. Получив это время поточнее %-), мы его вставим в сообщение, которое будем себе отправлять. Также допишем в сообщение IP чела и имя его хоста. А еще допишем урл, с которого отправлено сообщение, чтобы знать, что же чел комментирует. Теперь вставим сам текст сообщения. Для того чтобы я потом не парился, переконвертирую это все из win-1251 в koi8-r (у меня почтовый клиент больше любит koi8-r). Если сообщение, которое нам запостили, является пустышкой, отсылаем обратно с сообщением об ошибке. Если сообщение не пустышка, то посылаю письмо на свой адрес comment@domen.ru и выдаю сообщение, что ВСЕ ОК. Теперь переправил пользователя обратно на страницу, с которой он имел наглость запостить мессагу :). В теле нашей формы есть проверка на присутствие ответа скрипта-посланца. Если ошибка, он пишет: "Твой треш не был отправлен". Если сообщение отправлено нормально, то он пишет: "Твои комменты успешно запостены". TIPSa 8 Рассылка Для создания рассылки нам необходим такой минимум: php, sendmail, 3 файла на серваке. Первый файл - mail_db.txt, в нем записаны адреса, на которые мы хотим разослать свои письма. На каждой строчке один e@mail. Например: none@none.ru none@mail.ru none@inbox.ru Второй файл - это само сообщение, которое мы хотим безжалостно скинуть на всех. Например: Привет, великий ALL. ЭТО ТЕСТ! Пока. Третий файл maillist.php - это скрипт рассылки. Он же будет показывать нам результат своей работы. <html> <head> <meta http-equiv=content-type content="text/html; charset=windows-1251"> <title>Рассылка почты:</title> </head> <body> <h1>Рассылка почты:</h2> <hr noshade size="2" color="#D40000"> <?php $password = "mailok"; echo "<b>Подключение файлов:</b><br>\n\n"; echo "1. "; $temp = file("message.txt"); $sendread = join("", $temp); echo "message.txt - тело сообщения<br>"; ?> <hr noshade size="2" color="#D40000"> <?php echo "<b>Композиция сообщения:</b><br>\n\n"; $msg = ""; $msg .= $sendread; $msg .= " \n"; echo "<pre>".$msg."</pre>"; ?> <hr noshade size="2" color="#D40000"> <?php echo "<b>Подключение списка адресов:</b><br>\n\n"; $mailfile = fopen ("mail_db.txt", "r"); if (!$mailfile) { echo "<p>Unable to open remote file ".$mailfile." \n"; } while (!feof($mailfile)) { $read = fgets($mailfile, 2048); list($emails) = split(" ",$read); ereg_replace("\n","",$emails); $email[]=$emails; } fclose($mailfile); $cemail = count($email); $i = 0; echo "<br><b>Всего записей в файле: ".$cemail."</b><br>\n\n"; |