如何将变量从PHP传递到JS,对变量执行数学运算,然后输出到页面上的元素

如何将变量从PHP传递到JS,对变量执行数学运算,然后输出到页面上的元素,php,javascript,Php,Javascript,可能重复: 我试图将一个变量从mySQL传递到PHP,然后再传递到JavaScript,对其执行一些数学运算,然后将结果显示在页面的特定区域中(在一个元素中,并为其分配了特定的ID)。这是可能的还是有更简单的解决方案 谢谢 我已经知道如何将变量从MySQL获取到PHP,只是在之后做什么时遇到了问题 这是我在阅读回复后更新的代码。仍然不工作,但我肯定我做错了什么 <p id="p_id"><?php echo $price; ?></p> <input

可能重复:

我试图将一个变量从mySQL传递到PHP,然后再传递到JavaScript,对其执行一些数学运算,然后将结果显示在页面的特定区域中(在一个
元素中,并为其分配了特定的ID)。这是可能的还是有更简单的解决方案

谢谢

我已经知道如何将变量从MySQL获取到PHP,只是在之后做什么时遇到了问题

这是我在阅读回复后更新的代码。仍然不工作,但我肯定我做错了什么

<p id="p_id"><?php echo $price; ?></p>
<input type="radio" group="radio_group" value="Reduce 10%" onclick="radio_click();" />

<script type="text/javascript">
var price = <?php echo $price; ?>;

function radio_click() {
var target = document.GetElementById('p_id');
var final_number; // this will be variable your store the final number in

final_number = price * .9;
target.innerHTML = final_number;

}
</script>

var价格=; 功能收音机单击(){ var target=document.GetElementById('p_id'); var final_number;//这将是存储最终数字的变量 最终数量=价格*.9; target.innerHTML=最终编号; }
要将数据从PHP传递到JavaScript,只需
echo
it。 例如,假设要在消息框中显示数据:

$data="something";
echo "<script>";
// Do the maths
echo 'var = ' . $data . ' + 1';
echo 'document.write("<p id=\"someID\">" + var + "</p>");' // PHP code writing Javascript code to write HTML code. Wow.
echo "</script>";
$data=“某物”;
回声“;
//做数学题
echo“var=”$数据‘+1';
echo'document.write(“

“+var+”

”)”//PHP代码编写Javascript代码编写HTML代码。哇! 回声“;
如果要在单击单选按钮时显示数据:

<input type="radio" onClick="someFunction();">
<?php
echo "<script>function someFunction() {";
// Do the maths
echo 'var = ' . $data . ' + 1';
echo 'document.write("<p id=\"someID\">" + var + "</p>");' // PHP code writing Javascript code to write HTML code. Wow.
echo "}</script>";
?>


简而言之,您必须以JavaScript友好格式(引号和其他内容)将变量作为字符串传递给
标记


只需将变量从PHP输出到
项中即可。然后根据您的计算设置
的innerHTML属性。您可以将其放入函数中,并从单选按钮的onclick调用它

<p id="p_id"><!-- Your value will be inserted here --></p>
<input type="radio" group="radio_group" value="some_value" onclick="radio_click();" />

<script type="text/javascript">
var your_number = <?php echo $php_number; ?>;

function radio_click() {
    var target = document.GetElementById('p_id');
    var final_number; // this will be variable your store the final number in

    // do your math here using your_number variable

    target.innerHTML = final_number;

}
</script>

var你的_数=; 功能收音机单击(){ var target=document.GetElementById('p_id'); var final_number;//这将是存储最终数字的变量 //在这里使用您的_number变量进行计算 target.innerHTML=最终编号; }
我忘了提到我需要在单击收音机时显示该值button@cHao不是复制品。OP要求提供更完整的算法:传递给JS,对其执行操作并将其写入元素。OP:也欢迎使用堆栈溢出!基本上,当页面加载时,会在显示给用户的标记中回显一个PHP变量。当他们在单选窗体上选择一个选项时,它需要将标记中显示的值调整一个设定的数量或百分比。而不是在
标记中,因为这是JavaScript发生的地方。你只需要呼应出正确的JS。@GarrettBurke并不完全正确。PHP将变量插入(或传递)到JavaScript中,JS将处理该变量,然后JS将其写入HTML页面。
$data
应该转义或其他。
<?php

$variable = 5;
$javaScriptAccessible = '
    <script type="text/javascript">
        var javaScriptAccessible = '. json_encode($variable) .';
    </script>
';

echo $javaScriptAccessible;
<p id="p_id"><!-- Your value will be inserted here --></p>
<input type="radio" group="radio_group" value="some_value" onclick="radio_click();" />

<script type="text/javascript">
var your_number = <?php echo $php_number; ?>;

function radio_click() {
    var target = document.GetElementById('p_id');
    var final_number; // this will be variable your store the final number in

    // do your math here using your_number variable

    target.innerHTML = final_number;

}
</script>