как можно использовать переменную JS в PHP?
<script> x = document.getElementById(1).value; var listOf = <?php echo $listOf[x]; ?>; </script>
это не работает 🙁
И это справедливо. PHP выполняется на сервере , а JavaScript выполняется в браузере клиента. Это два разных контекста, а переменные из одного не отображаются во втором.
Вам нужно, чтобы ваш PHP-скрипт вывел версию JavaScript из массива, а затем использовал его в вашем скрипте. Что-то вроде этого:
<?php echo "listArray = new Array();\n"; foreach ($listArray as $key => $value) { echo 'listArray[', $key, '] = ', $value, ";\n"; }
это невозможно, потому что оба являются разными языками, поэтому вы не можете использовать javascript varible в php внутри javascript
Вы не можете использовать его прямо так.
Вам нужно будет использовать AJAX для отправки значения с клиентской стороны на серверную, и только тогда PHP сможет ее увидеть.
Использование jQuery может стать действительно простым:
x = document.getElementById(1).value; $.get("mypage.php?x=" + x, function(result) { alert("response from PHP: " + result); });
А в PHP читайте x
из querystring и отправляйте правильный вывод.
Это невозможно. PHP выполняется сервером, даже до того, как его выход достигнет вашего браузера. JS выполняется в браузере клиентов. Вы не можете этого сделать, если вы не вызываете другой PHP-скрипт с этой переменной x
.
Вы не можете. JavaScript запускается в вашем браузере, а PHP запускается на сервере. Единственный способ для JavaScript связываться с PHP – это использовать AJAX (XMLHttpRequest), отделяя JavaScript от PHP.
например, если вы помещаете php в любые одиночные или двойные кавычки, чем работает
<script type='text/javascript'> x = document.getElementById(1).value; var listOf = "<?php echo $listOf[x]; ?>"; </script>
Это преобразует переменную javascript в переменную php.
<script> function sud(){ javavar=document.getElementById("text").value; document.getElementById("rslt").innerHTML="<?php $phpvar='"+javavar+"'; echo $phpvar.$phpvar;?>"; } function sud2(){ document.getElementById("rslt2").innerHTML="<?php echo $phpvar;?>"; } </script> <body> <div id="rslt"> </div> <div id="rslt2"> </div> <input type="text" id="text" /> <button onClick="sud()" >Convert</button> <button onClick="sud2()">Once Again</button> </body>