За последние 24 часа нас посетили 17578 программистов и 1315 роботов. Сейчас ищут 1717 программистов ...

Код отправки писем не работает, где ошибка?

Тема в разделе "Работа с почтой", создана пользователем xapoh, 1 фев 2014.

  1. xapoh

    xapoh Новичок

    С нами с:
    1 фев 2014
    Сообщения:
    5
    Симпатии:
    0
    по этой ссылке http://gfile.ru/a43O6
    или вся страница
    <html http://www.fortuna-mania.ru/ofz.php>
    <head>
    <title>Оформить заказ</title>
    <link rel="stylesheet" type="text/css" href="ro2.css">
    </head>
    <body style="background: no">
    <br>&dArr; &dArr; &dArr; ОФОРМИТЬ ЗАКАЗ &dArr; &dArr; &dArr;<br><br>
    <?php
    function show_form()
    {
    ?>
    <form action="" method=post>
    <table>
    <tr>
    <td align="center" valign="top" width="310"><br>
    Телефон для связи<br><input type="text" name="tel" size="30"><br><br>
    Марка авто<br><input type=text name="name" size=30><br><br></td>
    <td align="center" valign="top" width="310"><br>
    Номер двигателя<br><input type=text name="dvs" size=30><br><br>
    Номер кузова<br><input type=text name="kuz" size=30><br><br></td></tr>
    <tr>
    <td align="center" valign="top" colspan="2">
    Деталь, узел, агрегат<br><textarea rows=3 name="mess" cols=60></textarea><br><br>
    <input type="submit" value="Отправить" name="submit" class="knopa" style="cursor: pointer"></font>
    <br><br></td></tr></table>
    </form>
    <?
    }

    function complete_mail() {
    // $_POST['title'] содержит данные из поля "Тема", trim() - убираем все лишние пробелы и переносы строк
    // htmlspecialchars() - преобразует специальные символы в HTML сущности, будем считать для того, чтобы простейшие попытки взломать наш сайт обломались
    // substr($_POST['title'], 0, 1000) - урезаем текст до 1000 символов
    // Для переменных $_POST['mess'], $_POST['name'], $_POST['tel'], $_POST['email'] все аналогично
    $_POST['mess'] = substr(htmlspecialchars(trim($_POST['mess'])), 0, 1000);
    $_POST['name'] = substr(htmlspecialchars(trim($_POST['name'])), 0, 30);
    $_POST['kuz'] = substr(htmlspecialchars(trim($_POST['kuz'])), 0, 30);
    $_POST['tel'] = substr(htmlspecialchars(trim($_POST['tel'])), 0, 30);
    $_POST['dvs'] = substr(htmlspecialchars(trim($_POST['tel'])), 0, 30);
    // если не заполнено поле "Имя" - показываем ошибку 0
    if (empty($_POST['name']))
    output_err(0);
    // если не заполнено поле "Деталь..." - показываем ошибку 1
    if(empty($_POST['mess']))
    output_err(1);
    // если не заполнено поле "Тел" - показываем ошибку 2
    if(empty($_POST['tel']))
    output_err(2);
    // если не заполнено поле "Кузов" - показываем ошибку 3
    if(empty($_POST['kuz']))
    output_err(3);
    // если не заполнено поле "Двигатель" - показываем ошибку 4
    if(empty($_POST['dvs']))
    output_err(4);
    // создаем наше сообщение
    $mess = '
    Имя отправителя:'.$_POST['tel'].'
    '.$_POST['name'];$_POST['kuz'];$_POST['dvs'];$_POST['mess'];
    // $to - кому отправляем
    $to = ."";

    mail($to, $from, $mess, 'From:'.$from. "\r\n" . 'MIME-Version: 1.0\r\nContent-type: text/html; charset=windows-1251\r\n\r\n');
    echo 'Ваш заказ принят! С Вами свяжутся в ближайшее время.';
    }

    function output_err($num)
    {
    $err[0] = 'Введите Марку-производитель';
    $err[1] = 'Укажите что Вы ищете';
    $err[2] = 'Введите телефон';
    $err[3] = 'Введите номер кузова. (Желательно полный)';
    $err[4] = 'Введите номер двигателя';
    echo '<p>'.$err[$num].'</p>';
    show_form();
    exit();
    }

    if (!empty($_POST['submit'])) complete_mail();
    else show_form();
    ?>
    <br>
    </body>
    </html>
    <!--mail($to, $_POST['name'], $mess, 'From:'.$from. "\r\n" . 'MIME-Version: 1.0\r\nContent-type: text/html; charset=windows-1251\r\n\r\n');-->
     
  2. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    А знаешь почему ты не можешь понять где ошибка? Да потому что это не код, это хрень страшная.
    Ты хотя бы 1 книгу прочитал или только статьи за 2000 год осилил?

    1. Проверь что все данные подставляются в mail()
    2. Ты вообще читал как пользоваться функцией mail? http://php.ru/manual/function.mail.html
    Какой там 2 параметр должен идти?
     
  3. xapoh

    xapoh Новичок

    С нами с:
    1 фев 2014
    Сообщения:
    5
    Симпатии:
    0
    Не будем тыкать! Я предпочту выбрать рабочий код написанный Вами.... и вставить его на сайт!!! Потому как являюсь самоучкой в html... А для php нет ни сил, ни времени.... зачем мне учить данный язык, если сайты если и делаю, то только для себя и друга... с целью экономии )))) Благодарю за понимание и ответ.
    ПС. Кстати этот код был взят где-то на просторах "рутины" и работал на предыдущем сайте!)))
     
  4. MaXyC_Web_Studio

    MaXyC_Web_Studio Активный пользователь

    С нами с:
    31 дек 2006
    Сообщения:
    678
    Симпатии:
    3
    Адрес:
    Новоуральск
    ну тогда с тебя 300р на сотик и я тебе сделаю. быстро и дешево.
     
  5. xapoh

    xapoh Новичок

    С нами с:
    1 фев 2014
    Сообщения:
    5
    Симпатии:
    0
    заманчиво, не дорого,.... только сайт Ваш не работает!!!! Странный Вы мастер
     
  6. MaXyC_Web_Studio

    MaXyC_Web_Studio Активный пользователь

    С нами с:
    31 дек 2006
    Сообщения:
    678
    Симпатии:
    3
    Адрес:
    Новоуральск
    хм. а продавец мерседесов должен тоже приезжать обязательно на мерседесе на работу?

    п.с. сайты давно канули в прошлое, а подпись не сменил.

    Добавлено спустя 1 минуту 55 секунд:
    п.с. а вы по жизни всегда себе проблемы ищите?
     
  7. xapoh

    xapoh Новичок

    С нами с:
    1 фев 2014
    Сообщения:
    5
    Симпатии:
    0
    Обычно да. Ставлю перед собой цель, потом ее достигаю.... Щас уже не так активно, семья, знаете ли.... Сейчас тяжелее стало, в моральном плане.... какой тут на хер PHP.... На HtmL написал, потому как ранее уже немного учил его сам...
    А теперь, бизнес, семья, создание благополучия..... эх....