Выполнение php в js файле

Тема в разделе "JavaScript", создана пользователем Албибеков, 23 апр 2018.

Статус темы:
Закрыта.
  1. Албибеков

    Албибеков Создатель

    Регистр.:
    24 июн 2016
    Сообщения:
    10
    Симпатии:
    4
    Добрый день/вечер всем.
    Помогите с вопросом по JS.

    Есть сайт с файлом http://site.ru/points.js (4kb), переименовывать в .php не нужно, именно необходим js

    Есть две переменные передаются через $_GET: $Latitude и $Longitude, как вывести их в js файл?
    На локалке (Denver) работает, на хостинге нет!!!, понимаю, что не правильно, может есть верное решение?

    В .htaccess прописал
    Код:
    AddDefaultCharset UTF-8
    AddType application/x-httpd-php .js
    AddHandler x-httpd-php5 .js
    
    <FilesMatch "\.(js|php)$">
    SetHandler application/x-httpd-php
    </FilesMatch>
    в points.js прописал:

    PHP:
    <?php
    $Latitude
    =isset($_GET['Latitude']) ? stripslashes($_GET['Latitude']) : '';
    $Longitude=isset($_GET['Longitude']) ? stripslashes($_GET['Longitude']) : '';
    ?>
    {'id': null, 'keyid': '3rt5f9wY4bhS39VEukIZilu882C', 'Latitude': '<?php echo $Latitude;?>', Longitude: '<?php echo $Longitude;?>'};

    И получается в адресной строке набираем.

    http://site.ru/points.js?Latitude=55.831903&Longitude=37.411961
    http://site.ru/points.js?Latitude=52.763338&Longitude=58.565466
    http://site.ru/points.js?Latitude=56.642325&Longitude=40.700461

    И получается соотв. содержимое файла.
    {'id': null, 'keyid': '3rt5f9wY4bhS39VEukIZilu882C', 'Latitude': '55.831903', Longitude: '37.411961'};
    {'id': null, 'keyid': '65654wY4bhS39VEukIZilu54654', 'Latitude': '52.763338', Longitude: '58.565466'};
    {'id': null, 'keyid': 'fdg5649wY4bhS39VEu31fdh2d3f', 'Latitude': '56.642325', Longitude: '40.700461'};

    Можно ли как-то сделать иначе.
    Не генерировать же файлы(((
    Если можно простой пример?
    Спасибо заранее.

    to moderators
    Перенесите топик в раздел JS
     
  2. Sorcus

    Sorcus Sorcus. A New Beginning.

    Moderator
    Регистр.:
    10 июл 2011
    Сообщения:
    424
    Симпатии:
    782
    Ох, зря ты так... :eek:
    Зачем тебе в данном случае PHP, если url из адресной строки можно обрабатывать с помощью JS? :eek:
     
    Absolute нравится это.
  3. borodatych

    borodatych Постоялец

    Регистр.:
    24 июн 2016
    Сообщения:
    96
    Симпатии:
    56
    Если вам нужно передать переменные в файл, то я поступаю так:

    Код:
    /// Определяем
    var myFnc = {
        getParameter: function(scriptName,sParameterName){
            var oScript = $('*[data-script="'+scriptName+'"]')[0];
            var scriptLink = oScript.src;
            var Parameters = scriptLink.substring(scriptLink.indexOf("?")+1).split("&");
            var value = "";
            for (var i = 0; i < Parameters.length; i++){
                if (Parameters[i].split("=")[0] === sParameterName){
                    if (Parameters[i].split("=").length > 1) value = Parameters[i].split("=")[1];
                    return value;
                }
            }
            return "";
        }
    }
    
    /// Юзаем
    var Lattitude = myFnc.getParameter('points','Lattitude');
     
    Албибеков нравится это.
  4. zardoz

    zardoz Постоялец

    Регистр.:
    6 май 2008
    Сообщения:
    87
    Симпатии:
    62
    Встречный вопрос, обязательно ли должно оканчиваться на js? Для красоты?
    Ваш хостер может запросто запретить редактировать эти параметры.

    Как вариант сделать папку /points/ а внутри расположить index.php с нужным кодом.
     
    Албибеков нравится это.
  5. Албибеков

    Албибеков Создатель

    Регистр.:
    24 июн 2016
    Сообщения:
    10
    Симпатии:
    4
    Всем спасибо. Решеною Сделал на php. Не принципиально оказывается на JS
     
Статус темы:
Закрыта.