Здравствуйте уважаемые форумчани! У меня проблема с обратной связью тут я листал кое где нашел ответы но еще остались вопросы в которых сам не разбираюсь полностью поэтому обращаюсь Вам кто сможет помогите плиз очень надо( вот код из формы
<form name="contact-form" class="contact-form" action="mail.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="antispam1" value="<?= $antispam1*711; ?>" id="antispam1" />
<input type="hidden" name="antispam2" value="<?= $antispam2*931; ?>" id="antispam2" />
<table border="0" width="99%" cellspacing="1">
<tr>
<td align="right"><label for="contact_name">Ф.И.О.<font color="#FF192C;">*</font></label></td>
<td><input name="contact_name" type="text" value="" id="contact_name" style="width: 98%;" /></td>
</tr>
<tr>
<td align="right"><label for="contact_phone">Контактный телефон<font color="#FF192C;">*</font></label></td>
<td><input name="contact_phone" type="text" value="" id="contact_phone" style="width: 98%;" /></td>
</tr>
<tr>
<td align="right"><label for="contact_mail">E-mail<font color="#FF192C;">*</font></label></td>
<td><input name="contact_mail" type="text" value="" id="contact_mail" style="width: 98%;" /></td>
</tr>
<tr>
<td align="right"><label for="contact_url">Почтовый индекс<font color="#FF192C;">*</font></label></td>
<td><input name="contact_url" type="text" value="" id="contact_url" style="width: 98%;" /></td>
</tr>
<tr>
<td align="right"><label for="contact_subject">Тема обращения<font color="#FF192C;">*</font></label></td>
<td><input id="contact_subject" name="contact_subject" style="width: 98%;">
</td>
</tr>
<tr>
<td align="right" valign="top"><label for="contact_message">Текст обращения:<font color="#FF192C;">*</font></label></td>
<td><textarea name="contact_message" id="contact_message" style="width: 98%; height: 200px;"></textarea></td>
</tr>
<tr>
<td align="right" <label for="contact_file">Прикрепить файл:</label></td>
<td><input type="file" name="file"></td>
</tr>
<tr>
<td align="right"><label for="contact_antispam">Защита от спама:<font color="#FF192C;">*</font> <?= $antispam1; ?>+<?= $antispam2; ?>=</label></td>
<td><input name="contact_antispam" type="text" value="" id="contact_antispam" /> Укажите свой ответ</td>
</tr>
<tr>
<td align="left"><input name="submit" type="submit" value="Отправить" id="submit" /></td>
</tr>
</table>
</form>
все работает кроме антиспама и аттача тоесть файл не прикрепляет и без заполнения поле антиспама письмо шлет, а вот и php код обработчика этой формы, он работает, даже если кому надо берите не жалко[PHP]<?php
//Функция проверки переменной
function html_filter($str) {
$result = HTMLSpecialChars($str);
return $result;}
function valid_email($em) {
if ( eregi("^[a-z0-9._-]+@+[a-z0-9._-]+.+[a-z]{2,3}$", $em) )
return true;
else
return false;}
$form_hide = false; //отобразить форму
if ($_POST and
isset($_POST['submit'])
and
isset($_POST['contact_name']) // имя
and
isset($_POST['contact_mail']) // обратный адрес
and
isset($_POST['contact_subject']) // тема письма
and
isset($_POST['contact_antispam']) // антиспам
and
isset($_POST['antispam1']) // антиспам
and
isset($_POST['antispam2']) // антиспам
)
{
// проверяем мыло
$ok = valid_email($_POST['contact_mail']);
if ($ok)
{ // антиспам
$antispam1s = (int) $_POST['antispam1'];
$antispam2s = (int) $_POST['antispam2'];
$antispam3s = (int) $_POST['contact_antispam'];
if ( ($antispam1s/734 + $antispam2s/911) != $antispam3s/123)
{ // неверный код
$ok = false;
echo '<h2>Привет роботам! </h2>';
}
}
if ($ok) // все ок, отправляем
{
$myemail = ''; // с какого адреса отправляем
$email = ''; // куда приходят письма
$subject = 'Обращение граждан!';
$header = 'From: ' . $myemail;
$header="Content-type: text/plain; charset=\"utf-8\"";
$text_email = 'Ф.И.О. : ' . $_POST['contact_name'] . "\n";
$text_email .= 'Контактный телефон: ' . $_POST['contact_phone'] . "\n";
$text_email .= 'Email: ' . $_POST['contact_mail'] . "\n";
$text_email .= 'Индекс почты: ' . $_POST['contact_url'] . "\n";
$text_email .= 'Тема обращения: ' . $_POST['contact_subject'] . "\n";
$text_email .= 'Текст обращения: ' . $_POST['contact_message'] . "\n";
$text_email = "Обращение с сайта: \n" . $text_email;
$form_hide = @mail($email, $subject, $text_email, $header);
if ( isset($_POST['subscribe']) and $_POST['subscribe'])
@mail($_POST['contact_mail'], $subject, $text_email, $header);
echo '<h2>Ваше обращение отправлено!</h2><p>'
. str_replace("\n", '<br />', htmlspecialchars($subject. "\n" . $message))
. '</p>';
$form_hide = true;
}
else
{
// неверные данные
echo '<h2>Заполните поля отмеченные звёздочками<br><a href="forma.php">Вернуться назад</a></h2>';
}
}
if ( !$form_hide ) :
srand((double) microtime() * 1000000);
$antispam1 = rand(1, 10);
$antispam2 = rand(1, 10);
?>
<?php endif; //if ( !$form_hide ) ?>[/PHP] теперь сам вопрос куда и как в скрипте обработчике писать переменные или подправить там, чтобы и файл прикрепил отправил и антиспам работал,и чтобы все поля делать обязательным для заполнения а то только с имейлом у мя обязательно стоит, помогите очень прошу надо срочно вес инет листал испробовал много ниче не помогло в пхп не силен только изучаю, только не пишите примеры мне надо на этом коде все делать а то примеров польно у меня пробовал впихать в мой код не получилось
Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
|