Приравнять переменную php переменной javascript


Я пытаюсь сделать что-то вроде этого:

<script type="text/javascript">
    function guardar_alteracoes(){ 
        <?php
            $nome = ?>$('#nome').val();<?php;
        ?>
    }

</script>

то есть, я хочу дать значение переменной php в текстовое поле в javascript. Значение текстового поля достигает здесь хорошо, но мне не удастся сравниться.

Author: pc_oc, 2014-07-11

3 answers

PHP и JavaScript работают в разное время. PHP генерирует страницу и оттуда есть только HTML и JavaScript. Так не может сравниться variàveis, которые принадлежат к разным мирам: PHP на стороне сервера и JavaScript на стороне клиента.

А Есть два пути, чтобы иметь возможность общаться "между мирами". Одна из них, слишком defenitiva в вашем случае, это сделать форму и передавать информацию с помощью обновления страницы.

Альтернативу, которая ищет здесь AJAX. Подключение/вызов на стороне сервера, где вы можете передать данные и получить в течение нескольких миллисекунд. Пример будет выглядеть следующим образом:

$.ajax({
    type: "POST",
    url: "seuFicheiro.php",
    data: {nomeVariavel: 'valor variável',
    success: function (data) {
        // aqui pode usar o que o PHP retorna
    }
});

И в сторону PHP что-то вроде:

$nome = $_POST['nomeVariavel'];
// correr outro código que precise...
echo $resposta;

- echo - это то, что передается в функцию успеха AJAX на стороне клиента. Надеюсь, что это помогает понять механизм.

 20
Author: Sergio, 2014-07-11 20:43:17

, Используя Javascript inline вы можете сделать что-то вроде:

<script>
  var variavelJavascript = "<?php echo variavelPHP ?>";
</script>

, Но помните, что в зависимости от ваших потребностей, использовать AJAX, является наиболее подходящим, как было сказано в других ответах.

См. этот вопрос в Stack-EN


Обновлении

Теперь я понял, что вы хотите сделать наоборот, передать переменную JS в PHP. В этом случае только с AJAX или submit form.

 1
Author: Comunidade, 2017-05-23 12:37:31

Это Не удается. Вы могли бы сделать в javascript запросе AJAX, записать значение в сеансе, и при следующем запуске вам будет это значение.

Оповещения tice!

 0
Author: gpupo, 2014-07-11 13:28:21