Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Помогите с формой!!!!

Ответить
Настройки темы
Помогите с формой!!!!

Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Помогите начинающему. Написал форму, но при отправке данных запускает outlook. Как сделать так, что бы не появялся outlook и данные просто отправлялись на почту? Может скрипт какой? PHP не пользуюсь.

Отправлено: 20:12, 02-06-2007

 

Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


skan
А чем пользуетесь??

-------
Fortes fortuna adiuvat


Отправлено: 20:41, 02-06-2007 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Administrator


Сообщения: 25151
Благодарности: 3803

Профиль | Сайт | Отправить PM | Цитировать


Я не помню уже где я взял пример этой формы, поэтому извините за отсутствие копирайтов. Пользуюсь очень давно, форма может и не самая простая, но в ней присутствует проверка заполненности полей, правильности их заполнения, с родного ли хоста запускается и т.д. Там проверки закомментированы, так что даже непосвященному не составит труда разобраться. Два кода: сама форма и файл настройки отправки. Код не правил в принципе, так что ненужные поля сами уберете, да и кол-во символов тоже поправите как понравится.

Форма
PHP код: Выделить весь код

<TABLE WIDTH=600 class=td cellSpacing=1 cellPadding=0 BORDER=0>

<TR><TD>
<?

require ('config.inc');

if (isset(
$form))
{
    
$error ValidForm();
    
    if (
$error[0] == '')
    {
        
SendMail();
    }
    else
    {
        echo 
'<FONT COLOR=RED><B>Найдены следующие ошибки:</B><BR><BR>'.$error[0].'</FONT><BR>';
        
ShowForm();
        echo 
'<BR></TABLE></CENTER>';
    }
}
else
{
    
ShowForm();
}

function 
ShowForm()
{
    if((isset(
$GLOBALS["error"][0])) && ($GLOBALS["error"][0]!= ''))
    {
        
$val[0] = $GLOBALS["form"]["user"];
        
$val[1] = $GLOBALS["form"]["email"];
        
$val[2] = $GLOBALS["form"]["comments"];
        
$val[3] = $GLOBALS["form"]["adress"];
        
$val[4] = $GLOBALS["form"]["company"];
        
$val[5] = $GLOBALS["form"]["tel"];
    }
    else
    {
        
$val[0] = $val[1] = $val[2] = '';
        
$class[0] = $class[1] = $class[2] = '';
    }
    (isset(
$GLOBALS["error"][1])) ? $class[0] = ' class=error' $class[0] = '';
    (isset(
$GLOBALS["error"][2])) ? $class[1] = ' class=error' $class[1] = '';

?>
<CENTER><FORM>
<TABLE WIDTH=98% BORDER=0>
<TR>
    <TD colspan=2 align=center> </TD>
</TR>   

<TR>
        <TD colspan=2 align=center> </TD>
</TR>
<TR>
    <TD align=right>Название компании: </TD>
    <TD><INPUT<?=$class[4]?> TYPE=text SIZE=30 MAXLENGTH=40 NAME=form[company] VALUE='<?=$val[4]?>'></TD>
</TR>
<TR>
    <TD align=right>Контактное лицо: </TD>
    <TD><INPUT<?=$class[0]?> TYPE=text SIZE=30 MAXLENGTH=40 NAME=form[user] VALUE='<?=$val[0]?>'></TD>
</TR>
<TR>
    <TD align=right>Адрес компании: </TD>
    <TD><INPUT<?=$class[3]?> TYPE=text SIZE=30 MAXLENGTH=40 NAME=form[adress] VALUE='<?=$val[3]?>'></TD>
</TR>
<TR>
    <TD align=right>Контактный телефон: </TD>
    <TD><INPUT<?=$class[5]?> TYPE=text SIZE=30 MAXLENGTH=15 NAME=form[tel] VALUE='<?=$val[5]?>'></TD>
</TR>
<TR>
    <TD align=right>Ваш e-mail: </TD>
    <TD><INPUT<?=$class[1]?> TYPE=text SIZE=30 MAXLENGTH=25 NAME=form[email] VALUE='<?=$val[1]?>'></TD>
</TR>
<TR>
    <TD valign=top align=right>Дополнительная информация: <BR></TD>
    <TD><TEXTAREA<?=$class[2]?> NAME=form[comments] ROWS=70 COLS=135><?=$val[2]?></TEXTAREA></TD>
    </TR>
<TR>
        <TD colspan=2 align=center><b><color:#9c0000>Все поля кроме дополнительной информации обязательны к заполнению!</color></b><BR></TD>
</TR>
<TR><TD align=right>
<INPUT TYPE=reset VALUE=Отмена class=but> </TD><TD colspan=2>
<INPUT TYPE=submit VALUE='Отправить' class=but></TD></TR>
</TABLE></FORM>
<?
}

function 
ValidForm()
{

$error[0] = '';

/* проверяем с родного-ли хоста пришли данные */
$referer getenv("SERVER_NAME");
    if (!
ereg($GLOBALS["SERVER"],$referer))
        {
//        echo "<BR><BR><BR><CENTER><IMG SRC='img/trash.gif'><BR><BR><B><P><FONT COLOR=RED>Доступ закрыт!<BR><BR>Вход только через <A HREF='http://".$GLOBALS["SERVER"]."'>".$GLOBALS["SERVER"]."</A><BR><BR><BR>";
//        exit;
        
}

/* проверяем не ввел-ли кто фигню типа длинного слова skghsdghfdhgkfdhgkhdfkghdfkghdfkghfdjghfjghfghjfhgfdhgkdfhhkfhgkfhgkh */
$array explode (" "$GLOBALS["form"]["comments"]);
foreach (
$array as $word)
    if (
strlen($word) > 30)
    {
        
$word trim (str_replace("\r\n"""$word));
        
$error[0] .= " Слишком длинное слово: ( <FONT COLOR='BLUE'><B>".htmlspecialchars($word)."</B></FONT> ). До или после нажатия <enter> необходим пробел.<BR>";
        
$error[3] = 1;
    }

else 
// проверяем на минимум символов
    
{
        if (
strlen($GLOBALS["form"]["user"]) < 3)                   
        {
            
$error[0] .= ' Слишком мало символов в поле Имя!<BR>';
            
$error[1] = 1;
        }
        if (
strlen($GLOBALS["form"]["adress"]) < 5)
        {
            
$error[0] .= ' Слишком мало символов в поле Адрес!<BR>';
            
$error[3] = 1;
        }
        if (
strlen($GLOBALS["form"]["tel"]) < 11)
        {
            
$error[0] .= ' Слишком мало символов в поле Телефон!<BR>';
            
$error[3] = 1;
        }
    }

/* обрезаем все данные до нужной длины (на всякий случай) */
$GLOBALS["form"]["user"] = trim(substr($GLOBALS["form"]["user"],0,25));
$GLOBALS["form"]["email"] = trim(substr($GLOBALS["form"]["email"],0,25));
$GLOBALS["form"]["comments"] = trim(substr($GLOBALS["form"]["comments"],0,300));

/* проверяем правильность e-mail */
if ((!ereg("^[a-z0-9_\.-]+@([a-z0-9][a-z0-9-]+\.)+[a-z]{2,4}$"$GLOBALS["form"]["email"])) && (trim($GLOBALS["form"]["email"]) != ''))
    {
        
$error[0] .= ' Неверный адрес e-mail.<BR>';
        
$error[2] = 1;
    }

/* если есть HTML - вырубаем */
$html ' Подобные символы запрещены - ';
if ( 
ereg "[<>&]+"$GLOBALS["form"]["user"], $error_1 ) ) 
    {
        
$error[0] .= $html.'( <FONT COLOR=BLUE>'.htmlspecialchars($error_1[0]).'</FONT> )<BR>';
        
$error[1] = 1;
    }

if ( 
ereg "[<>&]+"$GLOBALS["form"]["comments"], $error_3 ) )
    {   
        
$error[0] .= $html.'( <FONT COLOR=BLUE>'.htmlspecialchars($error_3[0]).'</FONT> )<BR>';
        
$error[3] = 1;
    }
return 
$error;
}

function 
SendMail()
{
    
$post $GLOBALS["form"]["user"]." написал(а):\n\n";
    
$post .= "\nКомпания:".$GLOBALS["form"]["company"]."\nАдрес:".$GLOBALS["form"]["adress"]."\nКонтактный телефон:".$GLOBALS["form"]["tel"]."\ne-mail:".$GLOBALS["form"]["email"]."\nДополнительная информация:"$GLOBALS["form"]["comments"];
    @
mail($GLOBALS["ADMIN"],
        
$GLOBALS["SUBJECT"],
        
$post);
    echo 
'<CENTER><BR>'.$GLOBALS["form"]["user"].', Ваше сообщение успешно отправлено.<BR><BR>';
}

?>
</TD></TR>
</TABLE>

Отправка (config.inc) :
PHP код: Выделить весь код

<?

$SUBJECT 
"тема письма"
$ADMIN "mail@mail.com"// замените на свое мыло
$SERVER 'somehost.com'// замените на имя Вашего сервера (ВАЖНО! без http:// )
?>

-------
FAQ по Windows 10 .::. Настройка Центра обновления в Windows 10 .::. Чистая установка Windows 10 – пошаговая инструкция


Отправлено: 21:40, 02-06-2007 | #3



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Помогите с формой!!!!

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] GDIPlus - стирание нарисованого на форме при появлении окошек над формой crashtuak AutoIt 4 08-08-2009 20:23
Delphi - Проблема с дочерней формой в DLL ALI Программирование и базы данных 1 09-06-2009 20:30
Создание страницы с формой ответа Sanches_95 Вебмастеру 4 20-05-2009 19:10
Проблема с формой отправки писем cheerful24 Вебмастеру 1 24-01-2009 04:34




 
Переход