PHP 变量到 Javascript 变量

PHP variable to Javascript variable

本文关键字:变量 Javascript PHP      更新时间:2023-09-26

我目前正在制作一个简单的php脚本,以在JavaScript中编辑游戏的某些方面。尝试使用表单将变量从脚本传递到游戏时,变量数据似乎不会传输。截至目前,该脚本旨在编辑游戏中一名玩家的 RDG 值。代码如下:

脚本.php:

<html>
<head>
<title>Form</title>
</head>
<body>
<form method="get" action="tron2.html">

<p>What are your player 1's RGB values:
<input type="text" name="color1r" /> Red 
<input type="text" name="color1g" /> Green 
<input type="text" name="color1b" /> Blue </p>
<input type="submit" value="Submit" />
</form>
</body>
</html>

以及 javascript 中分配变量的代码部分

<?php
$color1r = $_POST["color1r"];
$color1g = $_POST["color1g"];
$color1b = $_POST["color1b"];

?>

<HTML>
    <HEAD>
    <TITLE>
        Tron2 
    </TITLE>
    <script>
                    var x = "<?=  $color1r; ?>";
                    var y = "<?=  $color1g; ?>";
        var z = "<?=  $color1b; ?>";
                     //more code for the game

当游戏运行时,玩家的颜色保持黑色,因此 x,y,z 的值必须全部为 0。有什么原因不传递值吗?

<form method="get" ...>

$color1r = $_POST["color1r"];

不是朋友。

<form method="post" ...>$color1r = $_POST["color1r"];是朋友,
<form method="get" ...>$color1r = $_GET["color1r"];也是朋友。

<?= echo应该出错。使用<? echo $string<?=$string

除了切线的 POST/GET 混淆之外,始终使用 json_encode() 在 JS 代码中输出 PHP 变量。

没有转义或其他转义函数的echo将生成无效和/或不安全的代码。

<script>var jsvalue = <?php echo json_encode($phpvalue) ?>;</script>

在您的具体情况中:

<form method="post" action="tron2.html">

<script>
    var x = <?= json_encode($color1r) ?>;