Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отправка E-mail, e-mail не отправляется 
:(
    Опции темы
Rusman
Дата 29.7.2006, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 4.5.2006
Где: Пермь

Репутация: нет
Всего: нет



Здравствуйте!
Прошу помочь тех, кто может.
Я скачал скрипт Отправки маил. Он состоит из 2 файлов:
HTMl
Код

<html>
<head>
<title>DT Обратная связь v1.0 - Форма отправки</title>
<style>
body,td {
    font-family:tahoma;
    font-size:80%;
    }
    textarea {
    width:250px;
    height:150px;
    border: 1px solid #999999;
    font-family:tahoma;
    font-size:80%;
    }
.tb {
    border-top:1px solid #c0c0c0;
    border-left:1px solid #c0c0c0;
    border-right:2px solid #c0c0c0;
    border-bottom:2px solid #c0c0c0;
    padding: 15 15 15 15px;
    background:#f0f0f0;
    }
.fields {
    BORDER-RIGHT: #000000 2px solid;
    BORDER-TOP: #000000 1px solid; 
    FONT-SIZE: 11px; 
    MARGIN-BOTTOM: 1px; 
    BORDER-LEFT: #000000 1px solid; 
    COLOR: #ff5000; 
    BORDER-BOTTOM: #000000 2px solid; 
    FONT-FAMILY: Verdana,Tahoma,Arial; 
    BACKGROUND-COLOR: #e0e0e0;
    color:#1d76d8;
    background:#ffffff;
    }
.form_button {
    BORDER-RIGHT: #000000 1px solid; 
    BORDER-TOP: #000000 1px solid;
    FONT-SIZE: 11px;
    MARGIN-BOTTOM: 1px; 
    BORDER-LEFT: #000000 1px solid;
    BORDER-BOTTOM: #000000 1px solid;
    FONT-FAMILY: Verdana,Tahoma,Arial; 
    BACKGROUND-COLOR: #cccccc;
    }
</style>
</head>
<body>
<br>
<center>
<table width=600 border=0 height=300 class=tb>
<tr>
    <td>
    <form method=post action="feedback.php?fb=send">
    <table>
    <tr>
        <td align=right><sup style='color:red;'>*</sup> <b>Ваше имя:</b></td>
        <td><input type="text" name="name" class=fields><br></td>
    </tr>
    <tr>
        <td align=right><b>E-mail: </b></td>
        <td><input type="text" name="email" class=fields><br></td>
    </tr>
    <tr>
        <td align=right><sup style='color:red;'>*</sup> <b>Тема: </b></td>
        <td><input type="text" name="subj" class=fields style='width:250px;'></td>
    </tr>
    </table>

<br>
<sup style='color:red;'>*</sup> <b>Текст сообщения:</b><br>
<textarea name="mess" style='width:400px;height:150px;' class=fields></textarea>
<br><br>
<input type="submit" class="form_button" name="submit" value="Отправить письмо">&nbsp;&nbsp;<input type="reset" class=form_button>
<br><br><small> Обязательные для заполнения поля помечены - <sup style='color:red;'>*</sup></small> 
</form></td>
</tr>
</table>
<br>
<small>DT обратная связь v1.1: <a href="http://fedorov.vitalain.ru/" target="_">Fedorov Alexander</a>, 2005.</small>
</center>

</body>
</html>

Здесь все понятно.
Вот второй файл feedback.php
Код

<?php 
$version="1.1";
##########################
# DT Feedback   v1.1                            #
# Автор: Фёдоров Александр           #
# Дата: 4 июля 2005                          #
# URL: http://fedorov.vitalain.ru  #
##########################

// КОНФИГУРАЦИЯ
// ваше имя
$your_name="Фёдоров Александр";
// ваш email
$your_email="[email protected]";
// Ограничить количество отправляемых сообщений: yes/no (это 
$spamblock="yes";
// Интервал времени в сек. между отправками, например 600 (10 мин.)
$lim_time="10";
// Страница (URL) на которую скрипт перейдет после отправки сообщения
$redirect="index.html";


/***  ДАЛЬШЕ НИЧЕГО НЕ ИЗМЕНЯЕМ ***/

 if (!isset ($userdir)) {
  $z=dirname(__FILE__);
  $z2=$_SERVER['DOCUMENT_ROOT'].dirname ($_SERVER['PHP_SELF']);
  $userdir=substr ($z, strpos ($z, $z2)+strlen($z2));
  if ($userdir<>"") $userdir.="/";
 }
 else $userdir=str_replace (":","", $userdir);

$log=$userdir."log.dat";

function validEmail($email)    {
    return (ereg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+'.'@'.'[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.'.'[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$',$email));
    }
function fileRead ($file) {
        $fp = fopen($file,"rb");
        $content = fread($fp,filesize($file));
        fclose($fp);
        return $content;
    }

function kavichki($string, $who) {
    if ($who==1) {
      $string=str_replace(""",'"',$string);
      $string=str_replace("'","'",$string);
    } else {
        $string=str_replace('"',""",$string);
        $string=str_replace("'","'",$string);
    }
    $string = ereg_replace("\\\'", "'", $string);
      $string = ereg_replace('\\\"', '"', $string);
    return $string;
}

if (isset($_REQUEST['fb'])&&$_REQUEST['fb']=="send") {

if(empty($ip)):
    if (getenv('HTTP_X_FORWARDED_FOR')) { $ip=getenv('HTTP_X_FORWARDED_FOR'); }
    else { $ip=getenv('REMOTE_ADDR');}
endif;


if (!isset($_REQUEST['name'])||$_REQUEST['name']==="") $error[]="Вы не ввели имя!";
if (!isset($_REQUEST['mess'])||$_REQUEST['mess']==="") $error[]="Вы не ввели текст сообщения!";
if (isset($_REQUEST['email'])) { if ($_REQUEST['email']!==""&&validEmail($_REQUEST['email'])==0) $error[]="Вы ввели неправельные email!";
}



if (isset($spamblock)&&$spamblock=="yes") {
    $str=''; $count=0;
    $data=file($log);
    for ($i = 0; $i<sizeof($data);$i++) {
    $data_x=explode("|", $data[$i]);
    $cur_ip = $data_x[0];
    $last_time = $data_x[1];
    $last_time = $last_time+$lim_time;
    $cur_time=time();
    
        if ($cur_ip==$ip) {
            $count=$count+1;
                if ($last_time>$cur_time) $error[]="Разрешено отправлять только одно сообщение за ".floor($lim_time/60)." мин.";
                else $data[$i]=$ip."|".time()."\r\n";    
             }
        if ($count>1) $data[$i]='';
        $str.=$data[$i];
        }
}



if (!isset($error)) {

    $to = "$your_name <$your_email>, " ; 
    $subj=htmlspecialchars($_REQUEST['subj']);
    $email=$_REQUEST['email'];
    $name=htmlspecialchars($_REQUEST['name']);
    $mess = htmlspecialchars($_REQUEST['mess']);
    $mess= str_replace("\n","<br>",$mess);

if ($email!=="") $semail="<a href=\"mailto:$email\">$email</a>"; else $semail='';

$message = ' 
<html> 
    <head> 
        <title>'.$subj.'</title> 
    </head> 
    <body>
        <b>Здравствуйте, '.$your_name.'<br></b>
        <p>'.$mess.'</p> 
        <br>---------<br>
         <b>С Уважением, '.$name.'  '.$semail.'</b><br><br>
        <center>Powered by [url]DT Feedback v'.$version.'[/url]</center>
    </body> 
</html>'; 
    $message=kavichki(preg_replace('/http:\/\/([^",)<>\s]*)/', "<nobr><a href=\"http://\\1\">http://\\1</a></nobr>",$message),1); 
    $message=str_replace(array("[url]","[/url]"),array("<a href='http://fedorov.vitalain.ru/'>","</a>"),$message);

    $headers  = "Content-type: text/html; charset=windows-1251 \r\n"; 
    $headers .= "From: $name <$email>\r\n"; 


if (mail($to, $subj, $message, $headers)) {
    echo "<meta http-equiv=\"Refresh\" content=\"2; url=$redirect\"><center><br><br><h2>Сообщение успешно отправлено.</h2></center>";

if (isset($spamblock)&&$spamblock=="yes") {
    if ($count==0) {
        $str=$ip."|".time()."\r\n"; 
        $write=fopen($log,"a+") or die("<p>Не могу открыть файл $log</p>");
        flock($write,2);
        fputs($write,$str);
        flock($write,3);
        fclose($write);
    } else {
        $write=fopen($log,"w+") or die("<p>Не могу открыть файл $log</p>");
        flock($write,2);
        fputs($write,$str);
        flock($write,3);
        fclose($write);
    }
}

} else {
    echo "<center><br><br><h2>Ошибка отправки.</h2></center>";
}
} else {
    
        $errors="<center><table width='250' border='0'><tr><td><b style='color:red;text-align:center;'>Ошибки:</b><br><br></td></tr>";
         for ($i=0;$i<sizeof($error);$i++) {
        $errors.="<tr><td><li>".$error[$i]."</td></tr>";
             }
        $errors.="</table></center><br>";
        echo $errors;
}

}

if (!isset($_REQUEST['submit'])||isset($error)) {
    include($userdir."index.html");
}
?>


Вроде все правильно. Почему у меня не отправляет маил, а выходит ошибка Ошибка отправки.  
PM MAIL ICQ Skype   Вверх
GiV
Дата 29.7.2006, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 13.7.2006
Где: rus|53

Репутация: 4
Всего: 9



Потому что у Вас не срабатывает функция mail(), кроме "Ошибка отправки" еще ошибки есть? 
PM MAIL WWW ICQ   Вверх
Rusman
Дата 29.7.2006, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 4.5.2006
Где: Пермь

Репутация: нет
Всего: нет



Больше никаких ошибок. А что делать, если не работает функция? 
PM MAIL ICQ Skype   Вверх
Alex13
Дата 30.7.2006, 05:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 280
Регистрация: 30.12.2005
Где: Новосибирск

Репутация: нет
Всего: 1



Rusman, а хостинг sendmail поддерживает? 


--------------------
Самая страшная ошибка - это ошибка, не имеющая явных причин и конкретных последствий.
Антисоциальный блог.
PM WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0442 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.