веб-мастеру блог веб-мастера Статьи Веб-Мастера SEO Tools книги веб-мастеру

IPB

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V < 1 2  
Ответить в эту темуОткрыть новую тему
> Отправка сообщений с сайта, Посоветуйте
gid
сообщение 2.10.2007, 23:04
Сообщение #16


Администратор форума
*****

Группа: Главные администраторы
Сообщений: 626
Регистрация: 27.11.2006
Из: Россия
Пользователь №: 1



Может в форме используется метод передачи данных GET? Тогда нужно заменить $HTTP_POST_VARS на $HTTP_GET_VARS и $_POST на $_GET.

А вообще, вот мой переработанный скрипт:
Код

<?php
@header("Cache-Control: no-store, no-cache, must-revalidate");

$need_val = array("name", "email", "mess"); // Имена обязательных полей, указывать обязательно в том же регистре что и в форме


if (isset($_GET))
{
$have_val = array_keys($_GET);

$result = array_intersect ($have_val, $need_val);

if (sizeof($result)<>sizeof($need_val)) die("Не все обязательные поля заполненны!");

$tmp = "";
foreach ($_GET as $key => $val)
{
$tmp .= $key . ": " . $val . "\r\n----------\r\n";
}


if (mail("gid87@mail.ru", "Тема письма", $tmp)) echo "Ваше сообщение отправленно!";
else echo "Ошибка отправки!!!";
}
else echo "Ошибка!!! Не заполнены поля формы!!!";
?>


ps
если не будет работать, то замените $_GET на $_POST


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Виктор
сообщение 12.11.2007, 22:14
Сообщение #17


Новичок
**

Группа: Свои
Сообщений: 23
Регистрация: 23.8.2007
Пользователь №: 191



Здравствуйте! Попробовал скрипт, с переменной $_GET он все время пишет что не все поля заполнены, хотя они заполнены. А с переменной $_POST с формы все отправляется, но не проверяется.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
gid
сообщение 12.11.2007, 22:24
Сообщение #18


Администратор форума
*****

Группа: Главные администраторы
Сообщений: 626
Регистрация: 27.11.2006
Из: Россия
Пользователь №: 1



А вы строчку:
Код
$need_val = array("name", "email", "mess"); // Имена обязательных полей, указывать обязательно в том же регистре что и в форме

исправили на свои значения???

Если в скрипте используется $_POST то и в форме то же должен использоваться этот метод передачи данных, т.е.:
Код
<form action="http://путь_к_скрипту.php" method="post">


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Виктор
сообщение 13.11.2007, 19:27
Сообщение #19


Новичок
**

Группа: Свои
Сообщений: 23
Регистрация: 23.8.2007
Пользователь №: 191



Да, исправил. В форме стоит та же переменная. Если стоит не та переменная в форуме, то скрипт всегда пишет что не все данные заполнили, а если та же, то даже если не заполнено отсылает сообщение
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Виктор
сообщение 16.11.2007, 18:39
Сообщение #20


Новичок
**

Группа: Свои
Сообщений: 23
Регистрация: 23.8.2007
Пользователь №: 191



Никто не поможет?
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
sashkovishe
сообщение 16.11.2007, 21:49
Сообщение #21


Администратор форума
****

Группа: Администраторы
Сообщений: 397
Регистрация: 3.12.2006
Из: России
Пользователь №: 4



Покажите полностью ваш скрипт... если можно вместе с формой...


--------------------
Изображение
Think differently...
ICQ: 6-135-294
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Виктор
сообщение 17.11.2007, 18:08
Сообщение #22


Новичок
**

Группа: Свои
Сообщений: 23
Регистрация: 23.8.2007
Пользователь №: 191



Код
<form name="doska" method="GET" action="http://silaautomira.ru/mailform1.php">
<table width="722" border="1" cellspacing="0" cellpadding="0" bordercolor="#A6FFED">
  <tr bgcolor="#F0FEFF">
   <td colspan="4">Поля помеченные * обязательны для заполнения. Использование
    HTML-тегов запрещено. </td>
  </tr>
  <tr bgcolor="#F0FEFF">
   <td width="142">Марка:<font color="#FF0000">*</font></td>
   <td width="218">
    <input type="text" name="marka">
   </td>
   <td width="129">Цвет:</td>
   <td width="223">
    <select id="ucUserAvtoMarketAdd_ucUserAddCarInfo_idColor" name="color">
     <option selected value="0">-</option>
     <option value="1">Бежево-красный металлик</option>
     <option value="2">Бежево-розовый</option>
     <option value="3">Бежевый</option>
     <option value="4">Белый двухслойный</option>
     <option value="5">Бело-желтый</option>
     <option value="6">Белый</option>
     <option value="7">Голубой</option>
     <option value="8">Желто-зеленый</option>
     <option value="9">Желтый</option>
     <option value="10">Зелено-голубой</option>
     <option value="11">Зелено-синий</option>
     <option value="12">Зеленый</option>
     <option value="13">Золотисто-зеленый</option>
     <option value="14">Золотисто-серый</option>
     <option value="15">Золотой</option>
     <option value="16">Коричневый</option>
     <option value="17">Красно-коричневый</option>
     <option value="18">Красный</option>
     <option value="19">Красный металлик</option>
     <option value="20">Светло-бежевый</option>
     <option value="21">Светло-желтый</option>
     <option value="22">Светло-зеленый</option>
     <option value="23">Светло-серый</option>
     <option value="24">Серебристо-бежевый</option>
     <option value="25">Серебристо-голубой</option>
     <option value="26">Серебристо-зеленый</option>
     <option value="27">Серебристо-золотой</option>
     <option value="28">Серебристо-синий</option>
     <option value="29">Серебристо-черный</option>
     <option value="30">Серебристый</option>
     <option value="31">Серебристый желто-зеленый</option>
     <option value="32">Серебристый зелено-голубой</option>
     <option value="33">Серебристый красный</option>
     <option value="34">Серебристый коричнево-зеленый</option>
     <option value="35">Серебристый металлик</option>
     <option value="36">Серебристый оранжевый</option>
     <option value="37">Серебристый серо-зеленый</option>
     <option value="38">Серебристый сине-зеленый</option>
     <option value="39">Серебристый сине-фиолетовый</option>
     <option value="40">Серебристый темно-бордовый</option>
     <option value="41">Серебристый темно-зеленый</option>
     <option value="42">Серебристый темно-красный</option>
     <option value="43">Серебристый темно-синий</option>
     <option value="44">Серебристый темно-фиолетовый</option>
     <option value="45">Серебристый темный</option>
     <option value="46">Серебристый фиолетовый</option>
     <option value="47">Серебристый ярко-зеленый</option>
     <option value="48">Серебристый ярко-красный</option>
     <option value="49">Серебристый ярко-синий</option>
     <option value="50">Серо-бежевый</option>
     <option value="51">Серо-бежевый металлик</option>
     <option value="52">Серо-белый</option>
     <option value="53">Серо-голубой</option>
     <option value="54">Серо-зеленый</option>
     <option value="55">Серо-зеленый металлик</option>
     <option value="56">Серо-фиолетовый</option>
     <option value="57">Сине-зеленый</option>
     <option value="58">Синий</option>
     <option value="59">Сливочно-белый</option>
     <option value="60">Темно-бежевый</option>
     <option value="61">Темно-бордовый</option>
     <option value="62">Темно-голубой</option>
     <option value="63">Темно-зеленый</option>
     <option value="64">Темно-коричневый</option>
     <option value="65">Темно-красный</option>
     <option value="66">Темно-серый металлик</option>
     <option value="67">Темно-синий</option>
     <option value="68">Темный серо-синий</option>
     <option value="69">Фиолетово-синий металлик</option>
     <option value="70">Фиолетовый</option>
     <option value="71">Черный</option>
     <option value="72">Ярко-белый</option>
     <option value="73">Ярко-красный</option>
     <option value="74">Ярко-синий</option>
     <option value="75">Ярко-фиолетовый</option>
     <option value="76">Бежевый металлик</option>
     <option value="77">Белый металлик</option>
     <option value="78">Золотой металлик</option>
     <option value="79">Темно-красный металлик</option>
     <option value="80">Голубой металлик</option>
     <option value="81">Желтый металлик</option>
     <option value="82">Зеленый металлик</option>
     <option value="83">Золотой металлик</option>
     <option value="84">Коричневый металлик</option>
     <option value="85">Оранж</option>
     <option value="86">Оранж металлик</option>
     <option value="87">Пурпурный металлик</option>
     <option value="88">Рубиновый</option>
     <option value="89">Серый</option>
     <option value="90">Серый металлик</option>
     <option value="91">Синий металлик</option>
     <option value="92">Светло-Коричневый</option>
     <option value="93">Темно-Зеленый металлик</option>
     <option value="94">Темно-Красный металлик</option>
     <option value="95">Темно-Фиолетовый</option>
     <option value="96">Фиолетовый металлик</option>
     <option value="97">Черный металлик</option>
     <option value="98">Розовый</option>
     <option value="99">Розовый металлик</option>
     <option value="100">Светло-Зеленый металлик</option>
     <option value="101">Светло-Голубой металлик</option>
     <option value="102">Бордовый</option>
     <option value="103">Бордовый металлик</option>
    </select>
   </td>
  </tr>
  <tr>
   <td width="142" height="35">Модель:<font color="#FF0000">*</font></td>
   <td width="218" height="35">
    <input type="text" name="model">
   </td>
   <td width="129" height="35">Цена:<font color="#FF0000">*</font></td>
   <td width="223" height="35">
    <input type="text" name="zena">
   </td>
  </tr>
  <tr bgcolor="#F0FEFF">
   <td width="142" height="30">Год выпуска:<font color="#FF0000">*</font></td>
   <td width="218" height="30" bgcolor="#F0FEFF">
    <select id="ucUserAvtoMarketAdd_ucUserAddCarInfo_yearList" name="god">
     <option selected value="NULL">-</option>
     <option value="2008">2008</option>
     <option value="2007">2007</option>
     <option value="2006">2006</option>
     <option value="2005">2005</option>
     <option value="2004">2004</option>
     <option value="2003">2003</option>
     <option value="2002">2002</option>
     <option value="2001">2001</option>
     <option value="2000">2000</option>
     <option value="1999">1999</option>
     <option value="1998">1998</option>
     <option value="1997">1997</option>
     <option value="1996">1996</option>
     <option value="1995">1995</option>
     <option value="1994">1994</option>
     <option value="1993">1993</option>
     <option value="1992">1992</option>
     <option value="1991">1991</option>
     <option value="1990">1990</option>
     <option value="1989">1989</option>
     <option value="1988">1988</option>
     <option value="1987">1987</option>
     <option value="1986">1986</option>
     <option value="1985">1985</option>
     <option value="1984">1984</option>
     <option value="1983">1983</option>
     <option value="1982">1982</option>
     <option value="1981">1981</option>
     <option value="1980">1980</option>
     <option value="1979">1979</option>
     <option value="1978">1978</option>
     <option value="1977">1977</option>
     <option value="1976">1976</option>
     <option value="1975">1975</option>
     <option value="1974">1974</option>
     <option value="1973">1973</option>
     <option value="1972">1972</option>
     <option value="1971">1971</option>
     <option value="1970">1970</option>
     <option value="1969">1969</option>
     <option value="1968">1968</option>
     <option value="1967">1967</option>
     <option value="1966">1966</option>
     <option value="1965">1965</option>
     <option value="1964">1964</option>
     <option value="1963">1963</option>
     <option value="1962">1962</option>
     <option value="1961">1961</option>
     <option value="1960">1960</option>
     <option value="1959">1959</option>
     <option value="1958">1958</option>
     <option value="1957">1957</option>
     <option value="1956">1956</option>
     <option value="1955">1955</option>
     <option value="1954">1954</option>
     <option value="1953">1953</option>
     <option value="1952">1952</option>
     <option value="1951">1951</option>
     <option value="1950">1950</option>
    </select>
   </td>
   <td width="129" height="30">Руль:</td>
   <td width="223" height="30">
    <select name="rul">
     <option value="0" selected> -</option>
     <option value="1">Правый</option>
     <option value="2">Левый</option>
    </select>
   </td>
  </tr>
  <tr>
   <td width="142" height="31">Тип кузова:<font color="#FF0000">*</font></td>
   <td width="218" height="31">
    <select id="ucUserAvtoMarketAdd_ucUserAddCarInfo_idTransportBodyType" name="kuzov">
     <option selected value="0">-</option>
     <option value="1">Внедорожник</option>
     <option value="2">Кабриолет</option>
     <option value="3">Комби</option>
     <option value="4">Купе</option>
     <option value="5">Лимузин</option>
     <option value="6">Мини-вэн</option>
     <option value="7">Пикап</option>
     <option value="8">Седан</option>
     <option value="9">Стретч</option>
     <option value="10">Тарга</option>
     <option value="11">Универсал</option>
     <option value="12">Хэтчбек</option>
     <option value="13">Фургон</option>
     <option value="14">Микроавтобус</option>
    </select>
   </td>
   <td width="129" height="31">Таможня:<font color="#FF0000">*</font></td>
   <td width="223" height="31">
    <select name="tamogn">
     <option value="0" selected>-</option>
     <option value="1">Не растаможен</option>
     <option value="2">На Россию</option>
     <option value="3">На область</option>
    </select>
   </td>
  </tr>
  <tr>
   <td width="142" height="27">Тип двигателя:</td>
   <td width="218" height="27" bgcolor="#F0FEFF">
    <select name="dvigatel" id="ucUserAvtoMarketAdd_ucUserAddCarInfo_idEngineType">
     <option selected value="0">-</option>
     <option value="1">Бензин инжектор</option>
     <option value="2">Бензин карбюратор</option>
     <option value="3">Бензин турбонаддув</option>
     <option value="4">Бензин ротор</option>
     <option value="5">Дизель</option>
     <option value="6">Турбодизель</option>
     <option value="7">Гибридный</option>
    </select>
   </td>
   <td width="129" height="27">Привод:</td>
   <td width="223" height="27">
    <select name="privod" id="ucUserAvtoMarketAdd_ucUserAddCarInfo_idDriveType">
     <option selected value="0">-</option>
     <option value="1">Задний</option>
     <option value="2">Передний</option>
     <option value="3">Полный</option>
    </select>
   </td>
  </tr>
  <tr>
   <td width="142" height="33">Объем двигателя<font color="#FF0000">*</font></td>
   <td width="218" height="33">
    <input type="text" name="obom">
   </td>
   <td width="129" height="33">Состояние:<font color="#FF0000">*</font></td>
   <td width="223" height="33">
    <select name="sostoyanie">
     <option selected value="0">-</option>
     <option value="1">Новый</option>
     <option value="2">Отличное</option>
     <option value="3">Хорошее</option>
     <option value="4">Среднее</option>
     <option value="5">После аварии</option>
     <option value="6">На запчасти</option>
    </select>
   </td>
  </tr>
  <tr>
   <td height="61" width="142">Дополнительная информация:</td>
   <td colspan="3" height="61">
    <textarea name="mess" cols="70" rows="10"></textarea>
   </td>
  </tr>
  <tr bgcolor="#F0FEFF">
   <td colspan="4">Контактная информация: </td>
  </tr>
  <tr bgcolor="#F0FEFF">
   <td width="142">Номер телефона:</td>
   <td width="218">
    <input type="text" name="telefon">
   </td>
   <td width="129" bgcolor="#F0FEFF">E-mail<font color="#FF0000">*</font></td>
   <td width="223">
    <input type="text" name="email">
   </td>
  </tr>
  <tr>
   <td width="142" height="17">Контактное лицо:<font color="#FF0000">*</font></td>
   <td width="218" height="17">
    <input type="text" name="name">
   </td>
   <td width="129" height="17">Страна:</td>
   <td width="223" height="17">
    <input type="text" name="strana">
   </td>
  </tr>
  <tr>
   <td width="142" bgcolor="#F0FEFF">Город</td>
   <td width="218" bgcolor="#F0FEFF">
    <input type="text" name="gorod">
   </td>
   <td bgcolor="#F0FEFF">WMID </td>
   <td bgcolor="#F0FEFF">
    <input type="text" name="textfield">
   </td>
  </tr>
</table> <p>
  <input type="submit" name="Submit" value="Отправить">
  <input type="reset" name="Submit2" value="Сброс">
</p>
</form>


Код
<?php
@header("Cache-Control: no-store, no-cache, must-revalidate");

$need_val = array("name", "email", "mess"); // Имена обязательных полей, указывать обязательно в том же регистре что и в форме


if (isset($_GET))
{
$have_val = array_keys($_GET);

$result = array_intersect ($have_val, $need_val);

if (sizeof($result)<>sizeof($need_val)) die("Не все обязательные поля заполненны!");

$tmp = "";
foreach ($_GET as $key => $val)
{
$tmp .= $key . ": " . $val . "\r\n----------\r\n";
}


if (mail("mail", "Тема письма", $tmp)) echo "Ваше сообщение отправленно!";
else echo "Ошибка отправки!!!";
}
else echo "Ошибка!!! Не заполнены поля формы!!!";
?>
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
gid
сообщение 17.11.2007, 20:45
Сообщение #23


Администратор форума
*****

Группа: Главные администраторы
Сообщений: 626
Регистрация: 27.11.2006
Из: Россия
Пользователь №: 1



C формой все нормально, а вот в скрипте имена полей вы так и не указали. В общем, после небольшой доработки, скрипт для обработки этой формы должен выглядеть так:
Код
<?php

@header("Cache-Control: no-store, no-cache, must-revalidate");

$need_val = array("marka", "model", "zena", "god", "kuzov", "tamogn", "obom", "sostoyanie", "email" , "name"); // Имена обязательных полей, указывать обязательно в том же регистре что и в форме


if (isset($_GET))
{
$have_val = array_keys($_GET);

$result = array_intersect ($have_val, $need_val);

if (sizeof($result)<>sizeof($need_val)) die("Не все обязательные поля заполненны!");

$tmp = "";

foreach($need_val as $val)
{
    if (isset($_GET[$val]))
    {
        if (empty($_GET[$val]))
        {
            die("Не все обязательные поля заполненны!");
        }
    }
    else die("Не хватает обязательных полей!");
}

foreach ($_GET as $key => $val)
{
$tmp .= $key . ": " . $val . "\r\n----------\r\n";
}


if (mail("xxx@mail.ru", "Тема письма", $tmp)) echo "Ваше сообщение отправленно!";
else echo "Ошибка отправки!!!";
}
else echo "Ошибка!!! Не заполнены поля формы!!!";
?>


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Виктор
сообщение 18.11.2007, 14:19
Сообщение #24


Новичок
**

Группа: Свои
Сообщений: 23
Регистрация: 23.8.2007
Пользователь №: 191



Спасибо огромное! Все заработало! Чем мне Вас отблагодарить?
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Виктор
сообщение 24.11.2007, 0:08
Сообщение #25


Новичок
**

Группа: Свои
Сообщений: 23
Регистрация: 23.8.2007
Пользователь №: 191



Безкорыстный народ! Буду рекомендовать Ваш форум!
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
gid
сообщение 24.11.2007, 0:14
Сообщение #26


Администратор форума
*****

Группа: Главные администраторы
Сообщений: 626
Регистрация: 27.11.2006
Из: Россия
Пользователь №: 1



Этот форум и сайт в основном мое хобби, а не работа smile.gif поэтому и помогаю (ем) бескорыстно... ну не считая рекламы, которая какую-никакую но все же денюжку приносит...

ps
моя работа - ссылка в подписи + еще кое что smile.gif


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

2 страниц V < 1 2
Быстрый ответОтветить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 2.12.2008, 4:16
^ ВВЕРХ ^

Посетите наши проекты:
новости о кино | тумба под телевизор москва - canal40.net