Подскажите с javascript и php на DLE

G8
На сайте с 25.10.2009
Offline
51
737

Здраствуйте. Возникла определенная проблема с javascript и php на DLE, которую не могу решить и прошу Вашей помощи.

Сама проблема: на действие онклик запускается функция яваскрипт - function (), прописанная в файле main.tpl, которая благополучно работает, теперь стоит задача запустить работу функции при переходе на определенную страницу, т.е. через php в index.php я делаю так:

<?php if($_SERVER['REQUEST_URI']=='/....') { function () } ?> - соответственно не работает, поскольку, как я понимаю, function () рассматривается как пхп функция, а таковой не прописано.

Пишу <?php if($_SERVER['REQUEST_URI']=='/....') {?> function () <?php} ?> - выводит на экран function (), пробовал прописать сам яваскрипт код в index.php - эффекта не дает.

Если заношу строку <?php if($_SERVER['REQUEST_URI']=='/....') {?> function () <?php} ?> под <SCRIPT type="text/javascript"> - то функция все равно не работает, хотя и надпись function () на экран не выводится.

На джумле подобная запись

<SCRIPT type="text/javascript">

<?php if($_SERVER['REQUEST_URI']=='/....') {?> function () <?php} ?>

function () {}

Работает, на ДЛЕ не могу разобраться как правильно реализовать. Прошу Вашей помощи, заранее спасибо всем откликнувшимся.

Хорошие возможности для инвестиций (https://fx-trend.com/ru/pamm/agent/504894/11695/)
Sect0R
На сайте с 25.06.2008
Offline
64
#1

Если заношу строку <?php if($_SERVER['REQUEST_URI']=='/....') {?> function () <?php} ?> под <SCRIPT type="text/javascript"> - то функция все равно не работает, хотя и надпись function () на экран не выводится.

Должно работать, может где-то ошибка синтаксиса?

А в исходном коде отображается

<SCRIPT type="text/javascript"> function() </script>

?

Все запросы храню в Топвизоре (http://topvisor.ru/?inv=10564)
G8
На сайте с 25.10.2009
Offline
51
#2

В исходном коде отображается только сам код функции яваскрипт, т.е.

<SCRIPT type="text/javascript">

function 1 ()

{
document.getElementById
}

</SCRIPT>

а function 1 () , прописанная в пхп не отображается почему-то...

Если убрать

<SCRIPT type="text/javascript">

function 1 ()

{
document.getElementById
}

</SCRIPT>

из index.php и оставить только


<SCRIPT type="text/javascript">

<?php if($_SERVER['REQUEST_URI']=='/')
{
function 1 ();
} ?>

</SCRIPT>

то в исходном коде отображается только


<SCRIPT type="text/javascript">

</SCRIPT>

Теперь прописал так


<SCRIPT type="text/javascript">

<?php if($_SERVER['REQUEST_URI']=='/')
{ ?>

function 1 ();

<?php } ?>
</SCRIPT>

В исходном коде:


<SCRIPT type="text/javascript">

function 1 ();

</SCRIPT>

Вроде бы все как должно быть, но сама функция все равно не работает, при том, что на событие онклик работает как надо...

Sect0R
На сайте с 25.06.2008
Offline
64
#3

Напишите функцию, будет понятней

G8
На сайте с 25.10.2009
Offline
51
#4

Если Вы имеете ввиду саму яваскрипт функцию, то:


function 1() {
document.getElementById("2").style.display="block";
document.getElementById("3").className="activ";
}
Sect0R
На сайте с 25.06.2008
Offline
64
#5

А что за имя такое суперское "1" ?

G8
На сайте с 25.10.2009
Offline
51
#6

имя экспериментальное))) разобраться бы в чем проблема...

Sect0R
На сайте с 25.06.2008
Offline
64
#7

Если вставлено <script> и код не выполняется то 2 варианта:

1. ошибка в синтаксисе

2. элементы над которыми производит действие скрипт ещё не создались.

Например идёт скрытие <div id="nhide"> а этот <div> находится ниже скрипта. В таком случае скрипт не увидит данный элемент.

Поставьте firebug и посмотрите какие ошибки выводит.

G8
На сайте с 25.10.2009
Offline
51
#8

Я понял, у меня второй вариант, опустил <script> вниз страницы - все заработало. Спасибо Вам огромное, Sect0R, за помощь)))

Sect0R
На сайте с 25.06.2008
Offline
64
#9

Рад был помочь )

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий