0 Пользователей и 1 Гость просматривают эту тему.
  • 14 Ответов
  • 4825 Просмотров
*

Luckas147

  • Новичок
  • 8
  • 0 / 0
вот код подключения скриптов jquery и fancybox в <head>
Код
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<link rel="stylesheet" href="http://fancyapps.com/fancybox/source/jquery.fancybox.css?v=1.3.4" type="text/css" media="screen" />
<script type="text/javascript" src="js/jquery.fancybox-1.3.4.pack.js"></script>
вот код кнопки, по щелчке на которую должна появляться форма в fancybox и код самой формы в файле шаблона index.php
Код
<p><a class="fancybox" href="#form"><img width="280" height="60" border="0" src="/images/stories/f_4e393bc47e0083333.png"></img></a></p>
<div id="form" style="display:none;">
   <form class="forms" method="post" name="form" action="file.php">
   <p>Имя:<br/><input name="name" size="40" type="text"/></p>
   <p>Фамилия:<br/><input name="nickname" size="40" type="text"/></p>
   <p>Текст:<br/><textarea name="text" cols="50" rows="20"></textarea></p>
   <input name="submit" class="button" type="submit"/>
   </form>
 </div>
а вот JavaScript так же в хед индекса
Код
<script type="text/javascript">
$(document).ready(function() {
$(".fancybox").fancybox({
maxWidth : 600,
maxHeight : 400,
fitToView : false,
width : '70%',
height : '70%',
autoSize : false,
closeClick : false,
openEffect : 'none',
closeEffect : 'none'
});
});
</script>
В обычном файле 2.php делаю всё тоже самое - работает, в шаблоне Joomla 1.5 нет, хелп
*

beliyadm

  • Легенда
  • 8977
  • 1626 / 63
  • Севастополь == Россия
проверьте в FireBug - нет ли конфликтов скриптов? Если еще грузится стандартный мутулз - будут ошибки
тогда нужно добавлять для квери строку с noConflict
Все истины, которые я хочу вам изложить, — бесстыдная ложь.
Записки нетрезвого кодера || -=Joomla FAQ=- || -=все плохо=- || skype: beliyadm_pb
*

Fedor Vlasenko

  • Живу я здесь
  • 3819
  • 716 / 7
  • Все начинается с Value
и этот путь src="js/jquery.fancybox-1.3.4.pack.js" не совсем правильный. Скрипт загружается? Укажите путь от корня сайта
*

beliyadm

  • Легенда
  • 8977
  • 1626 / 63
  • Севастополь == Россия
и этот путь src="js/jquery.fancybox-1.3.4.pack.js" не совсем правильный. Скрипт загружается? Укажите путь от корня сайта
кстати да, я обычно в идексе шаблона изначально пишу
Код: php
$doc	= JFactory::getDocument();
$tplurl = JURI::base().'templates/'.$doc->template;
и дальше в всех скриптах шаблона пляшу от него
Код: html4strict
<script type="text/javascript" src="<?php echo $tplurl; ?>/js/jquery.js"></script>
Все истины, которые я хочу вам изложить, — бесстыдная ложь.
Записки нетрезвого кодера || -=Joomla FAQ=- || -=все плохо=- || skype: beliyadm_pb
*

Luckas147

  • Новичок
  • 8
  • 0 / 0
грузится мутулз
Код
<?php
/**
* @package   yoo_studio Template
* @file      index.php
* @version   1.5.2 June 2010
* @author    YOOtheme http://www.yootheme.com
* @copyright Copyright (C) 2007 - 2010 YOOtheme GmbH
*/

// no direct access
defined('_JEXEC') or die('Restricted access');

JHTML::_('behavior.mootools');

// include config
include_once(dirname(__FILE__).'/config.php');
$doc = JFactory::getDocument();
$tplurl = JURI::base().'templates/'.$doc->template;
?>
подскажите как будет с ноуконфликт решение
*

beliyadm

  • Легенда
  • 8977
  • 1626 / 63
  • Севастополь == Россия
грузится мутулз
тогда нужно добавлять для квери строку с noConflict
Все истины, которые я хочу вам изложить, — бесстыдная ложь.
Записки нетрезвого кодера || -=Joomla FAQ=- || -=все плохо=- || skype: beliyadm_pb
*

Luckas147

  • Новичок
  • 8
  • 0 / 0
подскажите решение как будет с noconflict
*

beliyadm

  • Легенда
  • 8977
  • 1626 / 63
  • Севастополь == Россия
Код: javascript
<script type="text/javascript">
$(document).ready(function() {
jQuery.noConflict();
jQuery(".fancybox").fancybox({
maxWidth : 600,
maxHeight : 400,
fitToView : false,
width : '70%',
height : '70%',
autoSize : false,
closeClick : false,
openEffect : 'none',
closeEffect : 'none'
});
});
</script>
Все истины, которые я хочу вам изложить, — бесстыдная ложь.
Записки нетрезвого кодера || -=Joomla FAQ=- || -=все плохо=- || skype: beliyadm_pb
*

Luckas147

  • Новичок
  • 8
  • 0 / 0
почему-то не работает вот весь индекс
Код
<?php
/**
* @package   yoo_studio Template
* @file      index.php
* @version   1.5.2 June 2010
* @author    YOOtheme http://www.yootheme.com
* @copyright Copyright (C) 2007 - 2010 YOOtheme GmbH
*/

// no direct access
defined('_JEXEC') or die('Restricted access');

JHTML::_('behavior.mootools');

// include config
include_once(dirname(__FILE__).'/config.php');
$doc = JFactory::getDocument();
$tplurl = JURI::base().'templates/'.$doc->template;
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>" >
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" />
<script type="text/javascript" src="http://sk.lang-tutor.com/info-block.js"></script>
<script type="text/javascript" src="http://sk.lang-tutor.com/faq.js"></script>

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<link rel="stylesheet" href="<?php echo $tplurl; ?>/style/jquery.fancybox-1.3.4.css" type="text/css" media="screen" />
<script type="text/javascript" src="<?php echo $tplurl; ?>/js/jquery.fancybox-1.3.4.pack.js"></script>

<jdoc:include type="head" />
<link rel="apple-touch-icon" href="<?php echo $template->url ?>/apple_touch_icon.png" />
<meta name='yandex-verification' content='5ce3924672b838ff' />
<meta name="cmsmagazine" content="fb628f3d20f491dbd1427a74b3197d19" />
<meta name="google-site-verification" content="dQUgVM_BabFgUhU2myzqiRnBBMmz442_3yj-watSTos" />
 <script>
    $(function() {
        $( "#accordion1" ).accordion({
            heightStyle: "content",
            active: "false",
            collapsible: "true"
        });
    });
    $(function(){
        $("#ui-accordion-accordion1-header-4").remove();   
    });
</script>

<script type="text/javascript">
    var _gaq = _gaq || [];
    _gaq.push(['_setAccount', 'UA-27215134-1']);
    var OpenStatParser = {
        _params: {},
        _parsed: false,
        _decode64: function(data) {
            if (typeof window['atob'] === 'function') {
                return atob(data);
            }

            var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
            var o1, o2, o3, h1, h2, h3, h4, bits, i = 0,
                    ac = 0,
                    dec = "",
                    tmp_arr = [];

            if (!data) {
                return data;
            }

            data += '';

            do {
                h1 = b64.indexOf(data.charAt(i++));
                h2 = b64.indexOf(data.charAt(i++));
                h3 = b64.indexOf(data.charAt(i++));
                h4 = b64.indexOf(data.charAt(i++));

                bits = h1 << 18 | h2 << 12 | h3 << 6 | h4;

                o1 = bits >> 16 & 0xff;
                o2 = bits >> 8 & 0xff;
                o3 = bits & 0xff;

                if (h3 == 64) {
                    tmp_arr[ac++] = String.fromCharCode(o1);
                } else if (h4 == 64) {
                    tmp_arr[ac++] = String.fromCharCode(o1, o2);
                } else {
                    tmp_arr[ac++] = String.fromCharCode(o1, o2, o3);
                }
            } while (i < data.length);

            dec = tmp_arr.join('');

            return dec;
        },
        _parse: function() {
            var prmstr = window.location.search.substr(1);
            var prmarr = prmstr.split('&');
            this._params = {};

            for (var i = 0; i < prmarr.length; i++) {
                var tmparr = prmarr[i].split('=');
                this._params[tmparr[0]] = tmparr[1];
            }

            this._parsed = true;
        },
        hasMarker: function() {
            if (!this._parsed) {
                this._parse();
            }
            return (typeof this._params['_openstat'] !== 'undefined')? true : false;
        },
        buildCampaignParams: function() {
            if (!this.hasMarker()) {
                return false;
            }
            var openstat = this._decode64(this._params['_openstat']);
            var statarr = openstat.split(';');
            return 'utm_campaign=' + statarr[3] + '&utm_source=' + statarr[0] + '&utm_medium=cpc&utm_content=' + statarr[2];
        }
    }
    if (OpenStatParser.hasMarker()) {
        var campaignParams = OpenStatParser.buildCampaignParams();
        if (campaignParams !== false) {
            _gaq.push(['_set', 'campaignParams', campaignParams]);
        }
    }
    _gaq.push(['_addOrganic', 'images.yandex.ru', 'text']);
    _gaq.push(['_addOrganic', 'blogs.yandex.ru', 'text']);
    _gaq.push(['_addOrganic', 'video.yandex.ru', 'text']);
    _gaq.push(['_addOrganic', 'yandex.ru', 'query']);
    _gaq.push(['_addOrganic', 'go.mail.ru', 'q']);
    _gaq.push(['_addOrganic', 'mail.ru', 'q']);
    _gaq.push(['_addOrganic', 'images.google.ru', 'q']);
    _gaq.push(['_addOrganic', 'maps.google.ru', 'q']);
    _gaq.push(['_addOrganic', 'google.com.ua', 'q']);
    _gaq.push(['_addOrganic', 'rambler.ru', 'words']);
    _gaq.push(['_addOrganic', 'nova.rambler.ru', 'query']);
    _gaq.push(['_addOrganic', 'nova.rambler.ru', 'words']);
    _gaq.push(['_addOrganic', 'gogo.ru', 'q']);
    _gaq.push(['_addOrganic', 'nigma.ru', 's']);
    _gaq.push(['_addOrganic', 'search.qip.ru', 'query']);
    _gaq.push(['_addOrganic', 'webalta.ru', 'q']);
    _gaq.push(['_addOrganic', 'sm.aport.ru', 'r']);
    _gaq.push(['_addOrganic', 'meta.ua', 'q']);
    _gaq.push(['_addOrganic', 'search.bigmir.net', 'z']);
    _gaq.push(['_addOrganic', 'search.i.ua', 'q']);
    _gaq.push(['_addOrganic', 'index.online.ua', 'q']);
    _gaq.push(['_addOrganic', 'web20.a.ua', 'query']);
    _gaq.push(['_addOrganic', 'search.ukr.net', 'q']);
    _gaq.push(['_addOrganic', 'search.ukr.net', 'search_query']);
    _gaq.push(['_addOrganic', 'search.com.ua', 'q']);
    _gaq.push(['_addOrganic', 'search.ua', 'q']);
    _gaq.push(['_addOrganic', 'poisk.ru', 'text']);
    _gaq.push(['_addOrganic', 'go.km.ru', 'sq']);
    _gaq.push(['_addOrganic', 'liveinternet.ru', 'ask']);
    _gaq.push(['_addOrganic', 'gde.ru', 'keywords']);
    _gaq.push(['_addOrganic', 'affiliates.quintura.com', 'request']);
    _gaq.push(['_addOrganic', 'akavita.by', 'z']);
    _gaq.push(['_addOrganic', 'search.tut.by', 'query']);
    _gaq.push(['_addOrganic', 'all.by', 'query']);
    _gaq.push(['_trackPageview']);

    (function() {
        var ga = document.createElement('script');
        ga.type = 'text/javascript';
        ga.async = true;
        ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(ga, s);
    })();
</script>
<script type="text/javascript">
$(document).ready(function() {
jQuery.noConflict();
jQuery(".fancybox").fancybox({
maxWidth : 600,
maxHeight : 400,
fitToView : false,
width : '70%',
height : '70%',
autoSize : false,
closeClick : false,
openEffect : 'none',
closeEffect : 'none'
});
});
</script>

</head>

<body id="page" class="yoopage <?php echo $this->params->get('columns'); ?> <?php echo $this->params->get('itemcolor'); ?> <?php echo $this->params->get('toolscolor'); ?>">

<?php if($this->countModules('absolute')) : ?>
<div id="absolute">
<jdoc:include type="yoomodules" name="absolute" />
</div>
<?php endif; ?>
<div id="page-body">
<div class="page-body-img">
<div class="wrapper">

<div id="header">

<div id="toolbar">

<?php if($this->params->get('date')) : ?>
<div id="date">
<div class="module mod-toolbar"><div class="box-1"><div class="box-2"><div class="box-3 deepest">
<?php echo JHTML::_('date', 'now', JText::_('DATE_FORMAT_LC'))?>
</div></div></div></div>
</div>
<?php endif; ?>

<?php if($this->countModules('toolbarleft')) : ?>
<div class="left">
<jdoc:include type="yoomodules" name="toolbarleft" style="yoo" />
</div>
<?php endif; ?>

<?php if($this->countModules('toolbarright')) : ?>
<div class="right">
<jdoc:include type="yoomodules" name="toolbarright" style="yoo" />
</div>
<?php endif; ?>

</div>


<div id="headerbar">

<?php if($this->countModules('headerleft')) : ?>
<div class="left">
<jdoc:include type="yoomodules" name="headerleft" style="yoo" />
</div>
<?php endif; ?>

<?php if($this->countModules('headerright')) : ?>
<div class="right">
<jdoc:include type="yoomodules" name="headerright" style="yoo" />
</div>
<?php endif; ?>

</div>



<?php if($this->countModules('logo')) { ?>
                                            <?php $front = & JSite::getMenu(); ?>
                                            <div id="logo">
                                                <?php if ($front->getActive() == $front->getDefault()) : ?>
                                                    <jdoc:include type="yoomodules" name="logo" />
                                                <?php else : ?>
                                                    <a href="/"><jdoc:include type="yoomodules" name="logo" /></a>   
                                                <?php endif ?>
                                            </div>
                                        <?php } ?>

<?php if ($this->countModules('banner')) : ?>
<div id="banner">
<jdoc:include type="yoomodules" name="banner" />
</div>
<?php endif; ?>

</div>
<!-- header end -->


<?php if ($this->countModules('top + topblock')) : ?>
<div id="top">

<?php if($this->countModules('topblock')) : ?>
<div class="topblock width100 float-left">
<jdoc:include type="yoomodules" name="topblock" style="yoo" />
</div>
<?php endif; ?>

<?php if ($this->countModules('top')) : ?>
<jdoc:include type="yoomodules" name="top" wrapper="topbox float-left" layout="<?php echo $this->params->get('top'); ?>" style="yoo" />
<?php endif; ?>

</div>
<!-- top end -->
<?php endif; ?>

<div class="menubar">

<?php if($this->countModules('menu')) : ?>
<div id="menu">

</div>
<?php endif; ?>

<?php if($this->countModules('search')) : ?>
<div id="search" class="<?php if($this->countModules('left + right')) echo "sidebar-search"; ?>">

</div>
<?php endif; ?>

<div class="content-wrapper-t1">
<div class="content-wrapper-t2">
<div class="content-wrapper-t3"></div>
</div>
</div>

</div>

<div class="content-wrapper-1">
<div class="content-wrapper-2">
<div class="content-wrapper-3">
<div class="content-wrapper-4">

<div id="middle">
<div id="middle-expand">

<div id="main">
<div id="main-shift">

<?php if ($this->countModules('breadcrumbs')) : ?>
<div id="breadcrumbs">
<jdoc:include type="yoomodules" name="breadcrumbs" />
</div>
<?php endif; ?>


<div id="maintop">
                                                                                                    <div class="clear"></div>
                                                                                                    <?php if ($this->countModules('maintop + maintopblock')) : ?><?php endif; ?>
</div>
<!-- maintop end -->


<div class="component-bg floatbox <?php if (!$this->countModules('mainbottom + mainbottomblock')) echo "last"; ?>">
<jdoc:include type="message" />
<jdoc:include type="component" />

</div>

<?php if ($this->countModules('mainbottom + mainbottomblock')) : ?>
                                                                                                <div id="mainbottom">

<?php if ($this->countModules('mainbottom')) : ?>

<?php endif; ?>

<?php if($this->countModules('mainbottomblock')) : ?>
<div class="mainbottomblock width100 float-left">
<jdoc:include type="yoomodules" name="mainbottomblock" style="yoo" />
</div>
<?php endif; ?>

</div>
<!-- maintop end -->
<?php endif; ?>

</div>
</div>

<?php if($this->countModules('left')) : ?>
<div id="left" class="sidebar">
<jdoc:include type="yoomodules" name="left" style="yoo" />
</div>
<?php endif; ?>

<?php if($this->countModules('right')) : ?>
<div id="right" class="sidebar">
<jdoc:include type="yoomodules" name="right" style="yoo" />
</div>
<?php endif; ?>

</div>
</div>

</div>
</div>
</div>
</div>

<div class="content-wrapper-b1">
<div class="content-wrapper-b2">
<div class="content-wrapper-b3"></div>
</div>
</div>

</div>
</div>
</div>


<div id="page-footer">

<p><a class="fancybox" href="#form1"><img width="280" height="60" border="0" src="/images/stories/f_4e393bc47e0083333.png"></img></a></p>
<div id="form1" style="display:none">
<form class="forms" method="post" name="form" action="file.php">
    <p>Имя:<br/><input name="name" size="40" type="text"/></p>
    <p>Фамилия:<br/><input name="nickname" size="40" type="text"/></p>
    <p>Текст:<br/><textarea name="text" cols="50" rows="20"></textarea></p>
    <input name="submit" class="button" type="submit"/>
    </form>
</div>
<div class="wrapper">

<?php if ($this->countModules('bottom + bottomblock')) : ?>
<div id="bottom">

<?php if ($this->countModules('bottom')) : ?>
<jdoc:include type="yoomodules" name="bottom" wrapper="bottombox float-left" layout="<?php echo $this->params->get('bottom'); ?>" style="yoo" />
<?php endif; ?>

<?php if($this->countModules('bottomblock')) : ?>
<div class="bottomblock width100 float-left">
<jdoc:include type="yoomodules" name="bottomblock" style="yoo" />
</div>
<?php endif; ?>

</div>
<!-- bottom end -->
<?php endif; ?>

<?php if ($this->countModules('footer + debug')) : ?>
<div id="footer">

<a class="anchor" href="#page"></a>
<jdoc:include type="yoomodules" name="footer" />
<jdoc:include type="yoomodules" name="debug" />

</div>
<!-- footer end -->
<?php endif; ?>

</div>
</div>
<noindex>

<!-- Yandex.Metrika counter -->
<script type="text/javascript">
(function (d, w, c) {
    (w[c] = w[c] || []).push(function() {
        try {
            w.yaCounter20888581 = new Ya.Metrika({id:20888581,
                    clickmap:true,
                    trackLinks:true,
                    accurateTrackBounce:true});
        } catch(e) { }
    });

    var n = d.getElementsByTagName("script")[0],
        s = d.createElement("script"),
        f = function () { n.parentNode.insertBefore(s, n); };
    s.type = "text/javascript";
    s.async = true;
    s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js";

    if (w.opera == "[object Opera]") {
        d.addEventListener("DOMContentLoaded", f, false);
    } else { f(); }
})(document, window, "yandex_metrika_callbacks");
</script>
<noscript><div><img src="//mc.yandex.ru/watch/20888581" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->


<!--LiveInternet counter--><script type="text/javascript"><!--
document.write("<a href='http://www.liveinternet.ru/click' "+
"target=_blank><img src='//counter.yadro.ru/hit?t42.6;r"+
escape(document.referrer)+((typeof(screen)=="undefined")?"":
";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?
screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+
";"+Math.random()+
"' alt='' title='LiveInternet' "+
"border='0' width='1' height='1'><\/a>")
//--></script><!--/LiveInternet-->



</noindex>
  <div align="center">

 
</body>
</html>
*

beliyadm

  • Легенда
  • 8977
  • 1626 / 63
  • Севастополь == Россия
1 - у вас минимум 2 раза грузится jquery
2 - строка JHTML::_('behavior.mootools'); в шаблоне не нужна
3 - все равно будут конфликты, потому что noConflict нужно объявлять сразу после загрузки библиотеки jquery и до вызова любых плагинов этой библиотеки
дальше не стал смотрел
Информации достаточно, погуглите минут 30 и все станет на свои места
Все истины, которые я хочу вам изложить, — бесстыдная ложь.
Записки нетрезвого кодера || -=Joomla FAQ=- || -=все плохо=- || skype: beliyadm_pb
*

Fedor Vlasenko

  • Живу я здесь
  • 3819
  • 716 / 7
  • Все начинается с Value
$doc   = JFactory::getDocument(); - эта строка лишняя для шаблона класс уже определен в $this
$tplurl = '/templates/'.$this->template;
----------------------------------------------------------------------------------------------------------------------
Код: javascript
<script>
    (function() {
     $("#ui-accordion-accordion1-header-4").remove();
        $( "#accordion1" ).accordion({
            heightStyle: "content",
            active: "false",
            collapsible: "true"
        });
    })(jQuery);
</script>
*

Luckas147

  • Новичок
  • 8
  • 0 / 0
помучался еще день, оказалось что для корректной работы на Joomla 1.5.22 требуется версия fancybox не выше 1.3.4, требующая jquery 1.4.4
Код
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript" src="http://lang-tutor.com/templates/yoo_studio/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
<link rel="stylesheet" type="text/css" href="http://lang-tutor.com/templates/yoo_studio/fancybox/jquery.fancybox-1.3.4.css" media="screen" />
обнаружил конфликт меню-аккордеона работающего на jquery 1.9.1 и не совместимого с fancybox на jquery 1.4.4 работает либо то либо то, теперь придется писать с нуля меню( всем спасибо за советы
*

Luckas147

  • Новичок
  • 8
  • 0 / 0
Подскажите пожалуйста еще PHP код вывода jforms с определенным id в шаблон, я хочу его в fancybox вывести
*

Luckas147

  • Новичок
  • 8
  • 0 / 0
пытаюсь совместить PHP отправки емайл и JavaScript проверки на заполненность полей
Код
<?php


function complete_mail() {
        // $_POST['title'] содержит данные из поля "Тема", trim() - убираем все лишние пробелы и переносы строк, htmlspecialchars() - преобразует специальные символы в HTML сущности, будем считать для того, чтобы простейшие попытки взломать наш сайт обломались, ну и  substr($_POST['title'], 0, 1000) - урезаем текст до 1000 символов. Для переменных $_POST['mess'], $_POST['name'], $_POST['tel'], $_POST['email'] все аналогично
        $_POST['name'] =  substr(htmlspecialchars(trim($_POST['name'])), 0, 30);
$_POST['email'] =  substr(htmlspecialchars(trim($_POST['email'])), 0, 40);
$_POST['skype'] =  substr(htmlspecialchars(trim($_POST['skype'])), 0, 30);
$_POST['lang'] =  substr(htmlspecialchars($_POST['lang']), 0, 100);
$_POST['level'] =  substr(htmlspecialchars(trim($_POST['level'])), 0, 100);
$_POST['time'] =  substr(htmlspecialchars(trim($_POST['time'])), 0, 30);
        $_POST['mess'] =  substr(htmlspecialchars(trim($_POST['mess'])), 0, 10000);
 
        // создаем наше сообщение
        $mess = '
Имя отправителя:'.$_POST['name'].'
Контактный email:'.$_POST['email'].'
Контактный skype:'.$_POST['skype'].'
Интересующий язык:'.$_POST['lang'].'
Текущий уровень знаний языка:'.$_POST['level'].'
Удобное время занятий мск:'.$_POST['time'].'
'.$_POST['mess'];
        // $to - кому отправляем
        $to = 'luckas167@yandex.ru';
        // $from - от кого
        $from = 'site@lang-tutor.com';
$subject = 'сообщение с сайта lang-tutor.com';
        mail($to, $subject, $mess, "From:".$from);
}

if (!empty($_POST['submit'])) complete_mail();
?>
Код
<script type="text/javascript">
$(document).ready(function() {
    $(".various").fancybox({
    'scrolling' : 'no',
'height'        : '450',
'width'         : '450',
    'titleShow' : false,
    'onClosed' : function() {
        $("#login_error1").hide();
$("#login_error2").hide();
    }
    });
});
</script>
<script type="text/javascript">
$(document).ready(function() {
    $("#jform").bind("submit", function() {

    if ($("#email).val().length < 1) {
        $("#login_error1").show();
        $.fancybox.resize();
        return false;
    }
        if ($("#mess").val().length < 1) {
        $("#login_error2").show();
        $.fancybox.resize();
        return false;
    }


return false;
    });
});
</script>
вот код формы на всякий
Код
<div style="display: none;">
<form id="jform" action="" method="post">
<h2 style="text-align:center">Форма заявки</h2>
<p class="forma">Вы можете отправить заявку на обучение через <strong>форму ниже</strong>. Мы стараемся обработать и ответить на все ваши заявки в кротчайшее время. Напоминаем вам что <strong>первый урок бесплатен.</strong></p>

<div class="field">
    <label class='jftextbox' style='width:197px;height:22px;'>Ваше имя</label>
    <input name="name" type='text' maxlength='50' class='jftextbox' value='' style='width:202px;height:16px;' />
</div>

<div class="field">
    <label class='jftextbox' style='width:197px;height:26px;'>E-mail<span class="required" style="color:red"> * </span></label>
    <input name="email" id="email" type='text' maxlength='50' class='jftextbox' value='' style='width:202px;height:16px;' />
<p id="login_error1" style="display:none">Введите email</p>
</div>

<div class="field">
    <label class='jftextbox' style='width:197px;height:23px;'>Ваш логин в skype </label>
    <input name="skype" type='text' maxlength='50' class='jftextbox' value='' style='width:202px;height:16px;' />
</div>

<div class="field">
    <label class='jflist' style='width:197px;height:22px;'>Меня интересует язык<span class="required" style="color:red"> * </span></label>
    <select name="lang" class='jflist' style='width:202px;'>
<option value='выбирите язык' selected="selected">выбирите язык</option>
<option value='английский' >английский</option>
<option value='арабский' >арабский</option>
<option value='болгарский' >болгарский</option>
<option value='греческий' >греческий</option>
<option value='испанский' >испанский</option>
<option value='итальянский ' >итальянский </option>
<option value='китайский' >китайский</option>
<option value='корейский' >корейский</option>
<option value='латинский ' >латинский </option>
<option value='монгольский' >монгольский</option>
<option value='немецкий ' >немецкий </option>
<option value='норвежский' >норвежский</option>
<option value='польский ' >польский </option>
<option value='португальский ' >португальский </option>
<option value='русский' >русский</option>
<option value='финский' >финский</option>
<option value='французский ' >французский </option>
<option value='шведский ' >шведский </option>
<option value='японский' >японский</option>
    </select>
</div>

<div class="field">
    <label class='jflist' style='width:197px;height:22px;'>Мой уровень сейчас</label>
    <select name="level" class='jflist' style='width:202px;'>
<option value='выбирите уровень' selected="selected">выбирите уровень</option>
<option value='Нулевой-начальный' >Нулевой-начальный</option>
<option value='Базовый (читаю, что-то понимаю, мало говорю)' >Базовый (читаю, что-то понимаю, мало говорю)</option>
<option value='Средний (все понимаю, говорю, но много ошибок)' >Средний (все понимаю, говорю, но много ошибок)</option>
<option value='Продвинутый (много знаю, хочу разобраться в тонкостях)' >Продвинутый (много знаю, хочу разобраться в тонкостях)</option>
    </select>
</div>

<div class="field">
    <label class='jflist' style='width:197px;height:22px;'>Удобное время занятий (московское время)</label>
    <select name="time" class='jflist' style='width:202px;'>
<option value='Любое' selected="selected">Любое</option>
<option value='Утро (7-12)' >Утро (7-12)</option>
<option value='День (12-16)' >День (12-16)</option>
<option value='Вечер (16-21)' >Вечер (16-21)</option>
<option value='Другое' >Другое</option>
    </select>
</div>

<div class="field message">
    <label class='jftextarea' style='width:197px;height:22px'>Ваше сообщение<span class="required" style="color:red"> * </span></label>
    <textarea id="mess" name="mess" rows='0' cols='0' class='jftextarea' style='width:202px;height:100px;'></textarea>
<p id="login_error2" style="display:none">Введите сообщение</p>
</div>

<input class='jfbutton' name="submit" type='submit' value='Отправить' />

</div>
</div>
подскажите что делаю не так, ява не робит, PHP робит, читал где-то что это делается по событию onClick
*

Luckas147

  • Новичок
  • 8
  • 0 / 0
Получилось, вот коды кому надо
Код
<?php


function complete_mail() {
        // $_POST['title'] содержит данные из поля "Тема", trim() - убираем все лишние пробелы и переносы строк, htmlspecialchars() - преобразует специальные символы в HTML сущности, будем считать для того, чтобы простейшие попытки взломать наш сайт обломались, ну и  substr($_POST['title'], 0, 1000) - урезаем текст до 1000 символов. Для переменных $_POST['mess'], $_POST['name'], $_POST['tel'], $_POST['email'] все аналогично
        $_POST['name'] =  substr(htmlspecialchars(trim($_POST['name'])), 0, 30);
$_POST['email'] =  substr(htmlspecialchars(trim($_POST['email'])), 0, 40);
$_POST['skype'] =  substr(htmlspecialchars(trim($_POST['skype'])), 0, 30);
$_POST['lang'] =  substr(htmlspecialchars($_POST['lang']), 0, 100);
$_POST['level'] =  substr(htmlspecialchars(trim($_POST['level'])), 0, 100);
$_POST['time'] =  substr(htmlspecialchars(trim($_POST['time'])), 0, 30);
        $_POST['mess'] =  substr(htmlspecialchars(trim($_POST['mess'])), 0, 10000);
 
        // создаем наше сообщение
        $mess = '
Имя отправителя:'.$_POST['name'].'
Контактный email:'.$_POST['email'].'
Контактный skype:'.$_POST['skype'].'
Интересующий язык:'.$_POST['lang'].'
Текущий уровень знаний языка:'.$_POST['level'].'
Удобное время занятий мск:'.$_POST['time'].'
'.$_POST['mess'];
        // $to - кому отправляем
        $to = 'luckas167@yandex.ru';
        // $from - от кого
        $from = 'site@lang-tutor.com';
$subject = 'сообщение с сайта lang-tutor.com';
        mail($to, $subject, $mess, "From:".$from);
}

if (!empty($_POST['submit'])) complete_mail();
?>
Код
<script type="text/javascript">
$(document).ready(function() {
    $("#jform").bind("submit", function() {

        if ($("#email").val().length < 1) {
            $("#login_error1").show();
            $.fancybox.resize();
            return false;
        }
            if ($("#mess").val().length < 1) {
            $("#login_error2").show();
            $.fancybox.resize();
            return false;
        }
    });
});
</script>
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Где хранится и где искать что написали в обратной связи ?

Автор Lzrv

Ответов: 0
Просмотров: 417
Последний ответ 04.12.2017, 21:17:14
от Lzrv
Как проверить форму обратной связи [Решено]

Автор mafiozzzza

Ответов: 8
Просмотров: 4594
Последний ответ 30.05.2017, 11:34:11
от darkghost
Как в Joomla создать форму обратной связки со своими полями?

Автор citizenfour

Ответов: 7
Просмотров: 650
Последний ответ 28.09.2016, 21:42:13
от vipiusss
плагин обратной связи с хорошой защитой от спама!

Автор Meloc987

Ответов: 3
Просмотров: 663
Последний ответ 23.04.2016, 10:50:21
от flyingspook
Как вставить в материал стандартную форму обратной связи Joomla 1.5?

Автор Meloc987

Ответов: 19
Просмотров: 2298
Последний ответ 20.01.2016, 14:26:25
от effrit