Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Модули Модуль формы оставления заявок, не работает как сделать?

Модуль формы оставления заявок, не работает как сделать?


     10.12.2014    Модули    1526

вопрос
Всем привет.
Други выручайте!

Делаю такой модуль как вакансии с формами для отправки заявки.

Сделал так:
engine/modules/newsmaker.php

<?php
/*
=====================================================
DataLife Engine - by SoftNews Media Group
-----------------------------------------------------
http://dle-news.ru/
-----------------------------------------------------
Copyright (c) 2004,2011 SoftNews Media Group
=====================================================
Данный код защищен авторскими правами
=====================================================
Файл: feedback.php
-----------------------------------------------------
Назначение: обратная связь
=====================================================
*/

if( ! defined( 'DATALIFEENGINE' ) ) {
    die( "Hacking attempt!" );
}

if( isset( $_POST['send'] ) ) {
include_once ENGINE_DIR . '/classes/mail.class.php';
$mail = new dle_mail( $config );
$tema = "ЗАЯВКА НА ВАКАНСИЮ NEWSMAKER ";
$opt = $_POST['opt'];

$email=trim(htmlspecialchars($_POST["email"]));
if(strlen($email)=="0"){$error.="Заполните поле <b>E-Mail</b><br>";}
elseif(!preg_match("/[0-9a-z_]+@[0-9a-z_^.-]+.[a-z]{2,3}/i",$email))
{
$error.="Вы ввели неверный <b>E-Mail</b><br>";
}

$name=trim(htmlspecialchars($_POST["name"]));
if(strlen($name)=="0"){$error.="Заполните поле <b>Ваше имя</b><br>";}
$nickname=trim(htmlspecialchars($_POST["nickname"]));
if(strlen($nickname)=="0"){$error.="Заполните поле <b>Ваш никнейм ( Псевдоним )</b><br>";}
$age=trim(htmlspecialchars($_POST["age"]));
if(strlen($age)=="0"){$error.="Заполните поле <b>Ваш возраст</b><br>";}
$city=trim(htmlspecialchars($_POST["city"]));
if(strlen($city)=="0"){$error.="Заполните поле <b>Ваш город</b><br>";}
$work=trim(htmlspecialchars($_POST["work"]));
if(strlen($work)=="0"){$error.="Заполните поле <b>Как с вами связаться</b><br>";}
$osebe=trim(htmlspecialchars($_POST["osebe"]));
if(strlen($osebe)=="0"){$error.="Заполните поле <b>Расскажите о себе</b><br>";}


if(@$error){
    msgbox("Внимание, обнаружена ошибка!", $error);  
}else{
    
$test = <<<HTML
<b>ЗАЯВКА НА ВАКАНСИЮ NEWSMAKER</b><br/><br/>
Email: {$email}<br/>
Имя: {$name}<br/>
Псевдоним: {$nickname}<br/>
Возраст: {$age}<br/>
Город: {$city}<br/>
Опыт работы: {$opt}<br/>
Способ связи: {$work}<br/>
Рассказ о себе: {$osebe}<br/>
HTML;



$mail->send( $config['admin_mail'], $tema, $test);
msgbox("ЗАЯВКА ПРИНЯТА", "Ваша заявка на вакансию <b>NEWSMAKER</b> будет рассмотрена в ближайшее время.");  
}            
}


            
$tpl->load_template( 'newsmaker.tpl' );                
$tpl->copy_template = "<form  method=\"post\" id=\"sendmail\" name=\"sendmail\" action=\"\">\n" . $tpl->copy_template . "<input name=\"send\" type=\"hidden\" value=\"send\" /></form>";
$tpl->compile( 'newsmaker' );
$tpl->clear();
    
?>


Это модуль формы для заявки на вакансию newsmaker

Потом так:
engine/modules/moviemaker.php

<?php
/*
=====================================================
DataLife Engine - by SoftNews Media Group
-----------------------------------------------------
http://dle-news.ru/
-----------------------------------------------------
Copyright (c) 2004,2011 SoftNews Media Group
=====================================================
Данный код защищен авторскими правами
=====================================================
Файл: feedback.php
-----------------------------------------------------
Назначение: обратная связь
=====================================================
*/

if( ! defined( 'DATALIFEENGINE' ) ) {
    die( "Hacking attempt!" );
}

if( isset( $_POST['send'] ) ) {
include_once ENGINE_DIR . '/classes/mail.class.php';
$mail = new dle_mail( $config );
$tema = "ЗАЯВКА НА ВАКАНСИЮ MOVIEMAKER ";

$email=trim(htmlspecialchars($_POST["email"]));
if(strlen($email)=="0"){$error.="Заполните поле <b>E-Mail</b><br>";}
elseif(!preg_match("/[0-9a-z_]+@[0-9a-z_^.-]+.[a-z]{2,3}/i",$email))
{
$error.="Вы ввели неверный <b>E-Mail</b><br>";
}

$name=trim(htmlspecialchars($_POST["name"]));
if(strlen($name)=="0"){$error.="Заполните поле <b>Ваше имя</b><br>";}
$nickname=trim(htmlspecialchars($_POST["nickname"]));
if(strlen($nickname)=="0"){$error.="Заполните поле <b>Ваш никнейм ( Псевдоним )</b><br>";}
$age=trim(htmlspecialchars($_POST["age"]));
if(strlen($age)=="0"){$error.="Заполните поле <b>Ваш возраст</b><br>";}
$city=trim(htmlspecialchars($_POST["city"]));
if(strlen($city)=="0"){$error.="Заполните поле <b>Ваш город</b><br>";}
$work=trim(htmlspecialchars($_POST["work"]));
if(strlen($work)=="0"){$error.="Заполните поле <b>Как с вами связаться</b><br>";}
$prime=trim(htmlspecialchars($_POST["prime"]));
if(strlen($prime)=="0"){$error.="Заполните поле <b>Пример ваших работ</b><br>";}
$osebe=trim(htmlspecialchars($_POST["osebe"]));
if(strlen($osebe)=="0"){$error.="Заполните поле <b>Расскажите о себе</b><br>";}


if(@$error){
    msgbox("Внимание, обнаружена ошибка!", $error);  
}else{
    
$test = <<<HTML
<b>ЗАЯВКА НА ВАКАНСИЮ MOVIEMAKER</b><br/><br/>
Email: {$email}<br/>
Имя: {$name}<br/>
Псевдоним: {$nickname}<br/>
Возраст: {$age}<br/>
Город: {$city}<br/>
Способ связи: {$work}<br/>
Пример работ: {$prime}<br/>
Рассказ о себе: {$osebe}<br/>
HTML;



$mail->send( $config['admin_mail'], $tema, $test);
msgbox("ЗАЯВКА ПРИНЯТА", "Ваша заявка на вакансию <b>MOVIEMAKER</b> будет рассмотрена в ближайшее время.");  
}            
}


            
$tpl->load_template( 'moviemaker.tpl' );                
$tpl->copy_template = "<form  method=\"post\" id=\"sendmail\" name=\"sendmail\" action=\"\">\n" . $tpl->copy_template . "<input name=\"send\" type=\"hidden\" value=\"send\" /></form>";
$tpl->compile( 'moviemaker' );
$tpl->clear();
    
?>


Это модуль формы для заявки на вакансию moviemaker

в index.php прописал:

где: require_once ROOT_DIR . '/engine/init.php';

Ниже вставил:
require_once(ENGINE_DIR. '/modules/newsmaker.php');
require_once(ENGINE_DIR. '/modules/moviemaker.php');

тут же:

if($do!="vacancy"){
$tpl->load_template( 'main.tpl' );
}else{
$tpl->load_template('vacancymain.tpl');

}

$tpl->set ( '{calendar}', $tpl->result['calendar'] );
$tpl->set ( '{archives}', $tpl->result['archive'] );
$tpl->set ( '{tags}', $tpl->result['tags_cloud'] );
$tpl->set ( '{vote}', $tpl->result['vote'] );
$tpl->set ( '{topnews}', $tpl->result['topnews'] );
$tpl->set ( '{login}', $tpl->result['login_panel'] );
$tpl->set ( '{speedbar}', $tpl->result['speedbar'] );
$tpl->set('{newsmaker}', $tpl->result['newsmaker']);
$tpl->set('{moviemaker}', $tpl->result['moviemaker']);

в engine.php:

после: switch ( $do ) {

вставил:
case "vacancy" :
include ENGINE_DIR . '/modules/vacancy.php';
break;

тут же где: elseif ($subaction == 'newposts') $nam_e = $lang['title_new'];

ниже вставил:
elseif ($do == 'vacancy') $nam_e= "Вакансии игрового проекта";


в шаблоне создал фал vacancymain.tpl
в нём подключил шаблон: vacancy.tpl

содержимое vacancy.tpl:


<script>
$(document).ready(function() { // вся магия после загрузки страницы
    $('a#go').click( function(event){ // ловим клик по ссылки с id="go"
        event.preventDefault(); // выключаем стандартную роль элемента
        $('#overlay').fadeIn(400, // сначала плавно показываем темную подложку
             function(){ // после выполнения предъидущей анимации
                $('#modal_form')
                    .css('display', 'block') // убираем у модального окна display: none;
                    .animate({opacity: 1, top: '50%'}, 200); // плавно прибавляем прозрачность одновременно со съезжанием вниз
        });
    });
    /* Закрытие модального окна, тут делаем то же самое но в обратном порядке */
    $('#modal_close, #overlay').click( function(){ // ловим клик по крестику или подложке
        $('#modal_form')
            .animate({opacity: 0, top: '45%'}, 200,  // плавно меняем прозрачность на 0 и одновременно двигаем окно вверх
                function(){ // после анимации
                    $(this).css('display', 'none'); // делаем ему display: none;
                    $('#overlay').fadeOut(400); // скрываем подложку
                }
            );
    });
});
$(document).ready(function() { // вся магия после загрузки страницы
    $('a#go2').click( function(event){ // ловим клик по ссылки с id="go"
        event.preventDefault(); // выключаем стандартную роль элемента
        $('#overlay2').fadeIn(400, // сначала плавно показываем темную подложку
             function(){ // после выполнения предъидущей анимации
                $('#modal_form2')
                    .css('display', 'block') // убираем у модального окна display: none;
                    .animate({opacity: 1, top: '50%'}, 200); // плавно прибавляем прозрачность одновременно со съезжанием вниз
        });
    });
    /* Закрытие модального окна, тут делаем то же самое но в обратном порядке */
    $('#modal_close2, #overlay2').click( function(){ // ловим клик по крестику или подложке
        $('#modal_form2')
            .animate({opacity: 0, top: '45%'}, 200,  // плавно меняем прозрачность на 0 и одновременно двигаем окно вверх
                function(){ // после анимации
                    $(this).css('display', 'none'); // делаем ему display: none;
                    $('#overlay2').fadeOut(400); // скрываем подложку
                }
            );
    });
});
$(document).ready(function() { // вся магия после загрузки страницы
    $('a#go3').click( function(event){ // ловим клик по ссылки с id="go"
        event.preventDefault(); // выключаем стандартную роль элемента
        $('#overlay3').fadeIn(400, // сначала плавно показываем темную подложку
             function(){ // после выполнения предъидущей анимации
                $('#modal_form3')
                    .css('display', 'block') // убираем у модального окна display: none;
                    .animate({opacity: 1, top: '50%'}, 200); // плавно прибавляем прозрачность одновременно со съезжанием вниз
        });
    });
    /* Закрытие модального окна, тут делаем то же самое но в обратном порядке */
    $('#modal_close3, #overlay3').click( function(){ // ловим клик по крестику или подложке
        $('#modal_form3')
            .animate({opacity: 0, top: '45%'}, 200,  // плавно меняем прозрачность на 0 и одновременно двигаем окно вверх
                function(){ // после анимации
                    $(this).css('display', 'none'); // делаем ему display: none;
                    $('#overlay3').fadeOut(400); // скрываем подложку
                }
            );
    });
});
</script>
{info}
    <table style=";width:100%;"><tbody><tr><td style="vertical-align:top;width: 100px;padding-top:5px;padding-left: 20px;">
    <div class="vocancyblog">NEWSMAKER</div>
    </td><td colspan="2" style="vertical-align:top;padding-top: 13px;padding-right: 20px">
   <div class="block-poloski"></div>
    </td></tr><tr><td colspan="3" style="vertical-align:top;padding-top: 5px;font-family: 'Droid Sans', sans-serif;font-size:14px;color: #5e5e5e;padding-left: 20px;line-height: 1.6em;">
       Наша команда ищет добросовестного и амбициозного ньюсмейкера.  В нашем проекте и в мире кибер-спорта происходит не мало интересных событий которые необходимо опубликовывать на нашем сайте.

    </td></tr><tr><td style="vertical-align:top;width: 170px;padding-top:55px;padding-left: 20px;">
     <img src="{THEME}/images/newsmaker.png" alt="" />
    </td><td style="vertical-align:top;font-family: 'Droid Sans', sans-serif;font-size:14px;color: #5e5e5e;padding-top:20px;line-height: 1.6em;">
      <b> <div class="jir">Обязанности: </div> </b><br/>
  - Публикация новостей команды и не маловажных новостей мира кибер спорта на сайте<br/><br/>
  <b><div class="jir">Требование: </div></b><br/>
- Грамотное правописание<br/>
- Умение правильно высказывать свои мысли и преподносить материал<br/>
- Умение оперативно находить интересную и актуальную информацию в сети<br/>
- Умение работать в фотошопе<br/>
- Возраст 18+<br/><br/>
    </td><td style="vertical-align:top;padding-top:200px;float:right;padding-right: 60px;">
     <div class="texto"><a href="#" class="texto" id="go"> <div class="ostavitz"><center>ОСТАВИТЬ ЗАЯВКУ</center></div></a></div>
    </td></tr></tbody></table>
    
    
    
    
<table style=";width:100%;"><tbody><tr><td style="vertical-align:top;width: 100px;padding-top:5px;padding-left: 20px;">
    <div class="vocancyblog">MOVIEMAKER</div>
    </td><td colspan="2" style="vertical-align:top;padding-top: 13px;padding-right: 20px">
   <div class="block-poloski"></div>
    </td></tr><tr><td colspan="3" style="vertical-align:top;padding-top: 5px;font-family: 'Droid Sans', sans-serif;font-size:14px;color: #5e5e5e;padding-left: 20px;line-height: 1.6em;">
        Наша команда ищет творческого и креативного  мувимейкера. В мире кибер-спорта ни одная команда не обходиться без столь важной профессии. Наша команда является одной из таких где требуется мувимейкер для создания мувиков и интересных моментов по CSS и DOTA2.

    </td></tr><tr><td style="vertical-align:top;width: 170px;padding-top:85px;padding-left: 20px;">
     <img src="{THEME}/images/movie.png" alt="" />
    </td><td style="vertical-align:top;font-family: 'Droid Sans', sans-serif;font-size:14px;color: #5e5e5e;padding-top:20px;line-height: 1.6em;">
       <b> <div class="jir">Обязанности: </div> </b><br/>
    - Создавать мувики, хайлаты по CS:S,DOTA2<br />
- Создавать мини ролики на любую тему нашего проекта<br /><br />
  <b><div class="jir">Требование: </div></b><br/>
- Умение работать с HLAE<br />
- Умение работать с Sony Vegas <br />
- Умение работать с After Effects <br />
- Умение работать в фотошопе<br/>
- Возраст 18+<br/><br/>
    </td><td style="vertical-align:top;padding-top:220px;float:right;padding-right: 60px;">
  <div class="texto"><a href="#" class="texto" id="go2"> <div class="ostavitz"><center>ОСТАВИТЬ ЗАЯВКУ</center></div></a></div>
    </td></tr></tbody></table>
    
    <table style=";width:100%;"><tbody><tr><td style="vertical-align:top;width: 100px;padding-top:5px;padding-left: 20px;">
    <div class="vocancyblog">STREAMMAKER</div>
    </td><td colspan="2" style="vertical-align:top;padding-top: 13px;padding-right: 20px">
   <div class="block-poloski"></div>
    </td></tr><tr><td colspan="3" style="vertical-align:top;padding-top: 5px;font-family: 'Droid Sans', sans-serif;font-size:14px;color: #5e5e5e;padding-left: 20px;line-height: 1.6em;">
Мы нуждаемся в опытном и позитивном стримере. Наша команда играет не мало интересных матчей и нам необходима прямая трансляция наших игр по CS:S и DOTA2.
    </td></tr><tr><td style="vertical-align:top;width: 170px;padding-top:55px;padding-left: 20px;">
     <img src="{THEME}/images/stream.png" alt="" />
    </td><td style="vertical-align:top;font-family: 'Droid Sans', sans-serif;font-size:14px;color: #5e5e5e;padding-top:20px;line-height: 1.6em;">
       <b> <div class="jir">Обязанности: </div> </b><br/>
    - Вести стримы матчей по CS:S и DOTA2<br /><br />
  <b><div class="jir">Требование: </div></b><br/>
- Хорошее железо<br/>
- Отличный микрофон<br/>
- Опыт вести стримы<br/>
- Желание развиваться<br/>
- Возраст 18+<br/><br/>
    </td><td style="vertical-align:top;padding-top:200px;float:right;padding-right: 60px;">
<div class="texto"><a href="#" class="texto" id="go3"> <div class="ostavitz"><center>ОСТАВИТЬ ЗАЯВКУ</center></div></a></div>
    </td></tr></tbody></table>
    
    
    
    
    <div id="modal_form"><!-- Само окно -->
    
    
    <table style=";width:100%;"><tbody><tr><td style="vertical-align:top;width: 110px;padding-top:17px;padding-left: 20px;">
      <div class="vocancyblog">NEWSMAKER</div>
    </td><td style="vertical-align:top;width: 610px;padding-top: 25px;">
     <div class="block-poloski"></div>
     </td><td style="vertical-align:top">
         <span id="modal_close">    <div class="imgclosed"></div></span> <!-- Кнопка закрыть -->
    </td></tr></tbody></table>
    
    
[not-group=5]
[b]{newsmaker}[/b]
[/not-group]
[group=5]
<br><br><br><br>
<center><div class="closed">ДОСТУП ЗАПРЕЩЁН!</div><br />
Зарегистрируйтесь или войдите под своим логином и паролем!</center><br />
{include file="login_page.tpl"}<br />

    
[/group]
</div>
<div id="overlay"></div><!-- Подложка -->

    <div id="modal_form2"><!-- Само окно -->
    
    
    <table style=";width:100%;"><tbody><tr><td style="vertical-align:top;width: 110px;padding-top:17px;padding-left: 20px;">
      <div class="vocancyblog">MOVIEMAKER</div>
    </td><td style="vertical-align:top;width: 610px;padding-top: 25px;">
     <div class="block-poloski"></div>
     </td><td style="vertical-align:top">
         <span id="modal_close2">    <div class="imgclosed"></div></span> <!-- Кнопка закрыть -->
    </td></tr></tbody></table>
    
    
        
[not-group=5]
[b]{moviemaker}[/b]
[/not-group]
[group=5]
<br><br><br><br>
<center><div class="closed">ДОСТУП ЗАПРЕЩЁН!</div><br />
Зарегистрируйтесь или войдите под своим логином и паролем!</center><br />
{include file="login_page.tpl"}<br />

    
[/group]


</div>
<div id="overlay2"></div><!-- Подложка -->
    
    
    <div id="modal_form3"><!-- Само окно -->
    
    
    <table style=";width:100%;"><tbody><tr><td style="vertical-align:top;width: 110px;padding-top:17px;padding-left: 20px;">
    <div class="vocancyblog">STREAMMAKER</div>
    </td><td style="vertical-align:top;width: 610px;padding-top: 25px;">
     <div class="block-poloski"></div>
     </td><td style="vertical-align:top">
         <span id="modal_close3">     <div class="imgclosed"></div></span> <!-- Кнопка закрыть -->
    </td></tr></tbody></table>
    
    
    
[not-group=5]
Привет3
[/not-group]
[group=5]
<br><br><br><br>
<center><div class="closed">ДОСТУП ЗАПРЕЩЁН!</div><br />
Зарегистрируйтесь или войдите под своим логином и паролем!</center><br />
{include file="login_page.tpl"}<br />

    
[/group]


</div>
<div id="overlay3"></div><!-- Подложка -->



Когда заполняю форму где moviemaker то оправляется сразу же с двух форм и с newsmaker и moviemaker.

Модуль формы оставления заявок, не работает как сделать?


Как сделать что бы они работали не зависимо друг от друга!

Помогите пожалуйста!

Мозги кипятком...

Заранее спасибо!

Ответа пока нет


Комментарии пользователей (2)

DEWERGENT
1

6

DEWERGENT - 10 декабря 2014 16:26 - Юзер

ПОМОГИТЕ!

DEWERGENT
1

6

DEWERGENT - 10 декабря 2014 18:53 - Юзер

ребяяятаааа

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы