2015-10-19 3 views
1

Мне нужно было бы переписать PHP-переменные (с сервера и связанные с поведением службы) в javascript. Например, "ssl" => "true" и адаптироваться соответственно в javascript. Дело в том, что я делаю это для некоторых файлов API, которые я пишу, и я хочу, чтобы у клиента был прямой доступ к этим файлам (<script src="... .js">), и это заставляет меня записывать информацию, которая может измениться в будущем в нескольких ссылках на файлы. То, что я хотел бы сделать, было что-то вроде этого, возможно ли это? (содержание, чтобы принести должны полностью конфиденциальна - из папок сервера в файлы PHP скрипт - и поэтому на самом деле не вариант для извлечения этой информации с помощью JavaScript):Echo php content в API javascript?

api.js

<? //PHP here. (I know...) 
(...) 
?> 
//some javascript 
var is_secure = <? echo "true"/"false" ?> 
(...) 

Так что при выполнении <script src="api.js"/> пользователь только выбирает:

var is_secure = "true"; 
(...) 

или

var is_secure = "false"; 
(...) 

Любая идея о том, как я мог бы сделать что-то подобное? Большое спасибо ...

+0

Я не понимаю, о чем вы просите. Если пользователь сможет извлечь эти данные, которые вы пишете с помощью PHP, или он должен оставаться закрытым.Эта часть вопроса немного расплывчата. –

+0

Вам нужно будет добавить обработчик apache для разбора js-файлов в виде PHP или назвать файл 'something.js.php', а затем он будет соответствующим образом отображать. –

+0

Действительно ли это «эхо» верно?/«False»? У вас есть '/' между, для меня что-то вроде true, деленное на false ... и будет исключением, потому что деление на 0 –

ответ

1

Вы можете просто создать свой PHP файл с этой линией, прежде всего:

header("Content-Type: application/javascript"); 
+0

'

0

EDIT:

я понял вопрос. Если вы хотите JS в файле PHP, вы должны сделать это следующим образом:

header("Content-Type: application/javascript"); 





OLD ОТВЕТ:

Я не знаю, если вы знаете, но клиент может «т увидеть код PHP ...

Так, если вы хотите:

echo "Something" 

Клиент видел бы только что-то.

Это не ясно, что вы пытаетесь сделать ...

Если вы не хотите, чтобы увидеть что-то, когда вы идете прямо в «секретный» PHP странице, то вы должны сделать это так :

JS:

jQuery.ajax({ 
     type: "POST", 
     url: 'secretfile.php', 
     dataType: 'html', 
     data: {apiRequest: 1}, 
     success: function (response) { 
      yourVar = response; 
     } 
}); 

PHP:

If ($_POST['apiRequest']==1){ 
    echo "Something"; 
} 

yourVar будет = «что-то "

Если вы перейдете на эту страницу, это ничего не отобразит;

+0

Я не знаю, знаете ли вы, но вы полностью не поняли проблему – Fane

+0

@Fane: как получилось –