2015-09-30 4 views
2

Я столкнулся с проблемой передачи переменных javascript в php внутри одной и той же функции. Мой код выглядит следующим образомПередача переменной от javascript к php внутри той же функции

else if(msg_type[i] == 'code'){ 
    var code_action = 'test'; 
    <?php 
    function foobar_func(){ 
    return "<script>document.writeln(action[i]);</script>"; 
    } 
    add_shortcode('foobar', 'foobar_func'); 
    ?> 

}

то, что я делаю, передавая эту code_action переменного яваскрипта и вернуть его функционировать без использования Ajax или JQuery ... есть ли возможный способ сделать это. .. ??

любые возможности будут оценены. Спасибо

+0

вы не можете пройти javascript> php .. php запускается на сервере до того, как javascript будет обработан, поэтому javascript не имеет понятия о php. Вам понадобится ajax или куки или что-то в этом роде. – DevDonkey

+0

Вскоре: НЕТ! Это связано с тем, что JS выполняется на клиенте (браузере) и PHP на сервере. Поэтому без какого-либо запроса (HTTP) (обратно на сервер) это невозможно. – Havelock

+0

нет .. потому что PHP работает на сервере, где выполняется javascript на клиенте –

ответ

0

Когда вы делаете запрос на вызов этой страницы, ваш блок <?PHP ?> выполняется на сервере. Он создает обработанный вывод на веб-странице (в вашем коде) и отправляет его в браузер. Теперь браузер выполняет ваши блоки <script> </script>.

Надеюсь, вы понимаете, что передача переменных от <script></script> до <?PHP ?> невозможна, поскольку последнее произошло в прошлом.

Но вы можете использовать его другим способом, пытаясь передать переменные из PHP в JS.

Когда вы пишете

<?PHP 
    $fromServer = "from php"; 

    echo "<script> var fromServer = " . $fromServer . " </script> 
?> 

.. он передает данные из PHP в JS.

Вы можете использовать HTTP POST или GET для передачи данных с JS на PHP, которые будут использоваться в следующем сеансе.

+0

Мне известно о методе get и post для отправки данных с js на php, но это будет в следующем сеансе, я хотел, чтобы работа выполнялась в течение одного сеанса. i.e передавать переменные непосредственно из js в php. Теперь я знаю, что это может быть невозможно. –

+0

любое представление о том, как работает этот код? –

+0

"; \t} \t >

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