2013-07-12 2 views
1

Я создал сейчас Javascript-код, который превращает PHP-переменную в код javascript, моя проблема в том, что переменная php важна, и я не хочу, чтобы какая-либо из них могла видеть эту переменную. Есть ли способ сделать это, кстати, я пытался использовать obfuscator, но он не работает из-за PHP код внутри кода Javascript, скажем, это мой код,Как защитить php-код?

<?php 
$var = "this is impotant"; 
?> 
<script type="text/javascript"> 
    var javaScriptVar = "<?php echo $var; ?>"; 
</script> 

Итак, есть ли способ использовать PHP переменные в JavaScript коде или скрыть результат PHP-код?

+0

Чтобы быть в безопасности, вы должны использовать 'var jsvar = ; ' –

ответ

0

, который хочет получить значение, получит его. но вы можете

  • динамически вводить их с помощью AJAX
  • закодировать (base64 и т.п.) значение
  • запутать код
+0

Могу я сказать, пожалуйста, как их вводить и кодировать? –

+0

Внесите его через ajax, т. Е. Загрузите его по собственному запросу, сделайте это значение более легким, чем вложение его в html imho – Bergi

3

Никто не видит код PHP. Но если вы выставляете значения в Javascript, они больше не секрет. Нет никакого способа справиться с этим. Вы не можете использовать значение в Javascript и НЕ показывать его.

Если вы хотите сохранить секретные данные процесса на сервере и доступны для следующего запроса этого пользователя, используйте сеанс.

2

Люди будут видеть только значение переменной. Они не знают, что это такое или как важно, как это должно быть. Никто не увидит имя переменной, потому что код PHP выполняется до того, как страница будет отправлена ​​клиенту. Поэтому нет необходимости обфускать значение, и вы все равно не можете, так как вам нужно значение.

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

<p>Hello Mr <?php echo $MY_SUPER_SECRET_VARIABLE ?></p> 

единственное, что люди смогут увидеть в источнике при загрузке страницы в

<p>Hello Mr Bond</p> 

То же правило применяется, если он помещен в Javascript

+0

Если я не пойму, не совсем. Имена переменных в JS-коде вполне читабельны, если они не запутаны. –

+0

Я думаю, вы неправильно поняли. Я полностью говорил о PHP-коде, который также относится к тегам PHP внутри блока JS. Я не говорил о переменных JS напрямую. Я вижу, как это может быть запутанным, хотя – PlausibleSarge

+0

Да, я тогда неправильно понял. Твоя формулировка немного неоднозначна. Тем не менее, проголосуйте от меня. –

2

Прежде всего, необходимо понять, что Javascript выполняется на стороне клиента , каждый фрагмент кода и переменной каким-то образом доступен кому-то с некоторым фоном программирования.

Хотя вы можете запутать исходный код и зашифровать переменную, чтобы сделать ее более трудной для чтения, нет 100% -ной защиты, когда все происходит на стороне клиента.

0

PHP-файлы будут интерпретироваться как статические (например, html или xml-формат) файлы, означает, что все переменные будут заменены определенными значениями. То, что пользователи видят, является статическим, не отображается php-код, а просто интерпретируется текст.

+0

Я имею в виду, как скрыть интерпретируемый текст –

Смежные вопросы