закрыть доступ к php файлу

Discussion in 'Болталка' started by GAiN, 23 Nov 2011.

  1. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,531
    Likes Received:
    166
    Reputations:
    99
    вообщем такая ситуация, нужно запретить доступ к содержимому php файла когда отключен javascript, опера обходит перенаправление такого вида: <noscript><meta http-equiv="refresh" content="0; URL=badbrowser.htm"></noscript>
    как можно закрыть доступ, оставив только сообщение об отключенном JS ???
     
  2. НTL

    НTL Elder - Старейшина

    Joined:
    26 Jan 2008
    Messages:
    715
    Likes Received:
    205
    Reputations:
    -26
    1) Браузер не сообщает серверу о наличии JS
    2) Можно сервером отдавать страницу "JS нету". А скриптом загрузить/отобразить все остальное
     
  3. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,531
    Likes Received:
    166
    Reputations:
    99
    оперу перенаправляет, но когда возвращаешся назат, то открывается тот php файл.
    а можно поконкретнее как сделать лучше ?
     
  4. kravch_v

    kravch_v Member

    Joined:
    1 Sep 2011
    Messages:
    134
    Likes Received:
    43
    Reputations:
    1
    В смысле закрыть? Чтобы пользователь не мог получить доступ к PHP-Файлу?
     
  5. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,531
    Likes Received:
    166
    Reputations:
    99
    например: http://www.sitename.com/script.php
    надо бы сделать чтобы содержимое (script.php) не работало а файл script.php открывался, но отображалось в браузере только сообщение: Ваш браузер не поддерживает JavaScript, либо эта функция отключена!
     
  6. kravch_v

    kravch_v Member

    Joined:
    1 Sep 2011
    Messages:
    134
    Likes Received:
    43
    Reputations:
    1
    А если JS работает, то скрипт должен открываться? Я вас правильно понял?

    //Дополняю
    Создайте страницу с таким кодом:
    Code:
    <script type="text/javascript">
      document.write("У Вас включён JavaScript!");
    </script>
    <noscript><span>У Вас отключён JavaScript...</span></noscript>
    
    И если JS включен, то делаем переадресацию к файлу script.php
     
    #6 kravch_v, 23 Nov 2011
    Last edited: 23 Nov 2011
  7. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,531
    Likes Received:
    166
    Reputations:
    99
    ага, так точно )
    сейчас проверю ...
    а как переадресацию сделать через meta тег?
     
  8. kravch_v

    kravch_v Member

    Joined:
    1 Sep 2011
    Messages:
    134
    Likes Received:
    43
    Reputations:
    1
    Вот решение твоей проблемы:

    Code:
    <script language="JavaScript"> 
      window.location.href = "http://site.ru/script.php"
    </script>
    <noscript><span>У Вас отключён JavaScript...</span></noscript>
    
     
  9. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,531
    Likes Received:
    166
    Reputations:
    99
    Большое спасибо! проверил, всё работает, поставил +
     
  10. |qbz|

    |qbz| Banned

    Joined:
    25 Dec 2009
    Messages:
    385
    Likes Received:
    169
    Reputations:
    65
    script.php так планируй:

    PHP:
    <?php if ($_COOKIE['js'] != 1): ?>
        <?php if ($_SERVER['QUERY_STRING'] != 'check'): ?>
        <script>document.cookie="js=1";location.href="./<?php echo(basename(__FILE__)); ?>?check";</script>
        <?php endif; ?>
    <?php 
    else: ?>

        тут тело скрипта, то есть код, который ты хотел прятать

    <?php endif; ?>
     
    #10 |qbz|, 23 Nov 2011
    Last edited: 23 Nov 2011