在 JavaScript 中设置或更改 PHP 变量

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/28694959/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-23 02:15:51  来源:igfitidea点击:

Set or change PHP variable in JavaScript

javascriptphpjqueryhtmlcss

提问by gamal

I am new to PHP and JavaScript.. I need to take the height of a div and assign it in to PHP variable so that I can use it later for further processes.

我是 PHP 和 JavaScript 的新手。我需要取一个 div 的高度并将其分配给 PHP 变量,以便我以后可以使用它进行进一步的处理。

This is how tried it for now, but it did not workout well..

这是目前尝试的方式,但它没有很好地锻炼..

<div id="leftSideDataBox" style="height:auto; overflow:hidden">
// some web form contents 
</div>

<?php $leftSideDataBoxHight=0;?>
<script>
     var myDiv = document.getElementById("leftSideDataBox");
     var boxHight=myDiv.clientHeight;
     <?php $leftSideDataBoxHight?>=boxHight;
</script>
<?php if(leftSideDataBoxHight<100)
{
//do some window arrangements
}?>

I know it was not ROCKET SCIENCE, but i could not find any solution for it.

我知道这不是火箭科学,但我找不到任何解决方案。

When I put a alert to it it displaces the height of the div

当我向它发出警报时,它会取代 div 的高度

<script>
    var myDiv = document.getElementById("leftSideDataBox");
    alert(myDiv.clientHeight)
</script>

Do you guys have any solutions??? Thank You..

各位大侠有解决办法吗???谢谢你..

回答by Vasim Shaikh

You cannot pass variable values from the current page javascript to the current page PHP code... PHP code runs at the server side and it doesn't know anything about what is going on on the client side.

您不能将变量值从当前页面 javascript 传递到当前页面 PHP 代码...... PHP 代码在服务器端运行,它对客户端发生的事情一无所知。

You can use hidden fieldhere.

您可以在此处使用隐藏字段

HTML:

HTML:

<div>
 // your div
</div>
<input type="hidden" id="hiddencontainer" name="hiddencontainer"/>

<script>
  var myhidden = document.getElementById("hiddencontainer");
  myhidden.value=boxHeight;
</script>

In PHP side you can get value using,

在 PHP 方面,您可以使用以下方法获得价值,

$boxsize=$_REQUEST["hiddencontainer"];
echo $boxsize;

回答by Jesper

Answer:

回答:

You simply cannot do that, you need to understand the difference between client/server side programming, you cannot assign Javascript value to PHP variable, yea but you can assign PHP value to your javascript

您根本无法做到这一点,您需要了解客户端/服务器端编程之间的区别,您不能将 Javascript 值分配给 PHP 变量,是的,但是您可以将 PHP 值分配给您的 javascript

Reference:

参考:

How to assign php variable in JavaScript value assign?

如何在 JavaScript 值分配中分配 php 变量?

Maybe Take a look at this too:

也许看看这个:

How to pass JavaScript variables to PHP?

如何将 JavaScript 变量传递给 PHP?