PHP: 更改标签值

PHP: changing label value

每次您从文本框中提交值时,我都试图更改 HTML 标签的值,但由于某种原因,当我提交数字时,没有任何变化。这是 HTML 片段:

<div>
    <form style="margin-left: 30%; margin-right: 30%; margin-bottom:5%">
      Score:
      <input type="number" name="score"><br>
      <input type="submit" name="Submit" class="btn btn-primary" action="calcScore">
      <input type="submit" name="Cancel" class="btn btn-primary" value="Cancel">
    </form>
    <span>
      <label class="scorePlate"><?php echo $player1Score?></label>
      <label class="scorePlate"><?php echo $player2Score?></label>
    </span>

和PHP函数:

function calcScore()
{
    $playerThrow = $_GET["score"];
    $player1Score = $playerThrow;
}

任何人都可以解释为什么我提交号码后它没有任何改变吗?

如果您的 url 是以下形式:site.com?player1=12&player2=15 然后我们可以执行以下代码来获取两者:

function calcScore($score)
{
    $playerThrow = $_GET[$score];
    return $playerThrow;
}

<label class="scorePlate"><?php echo calcScore(player1) ?></label>
<label class="scorePlate"><?php echo calcScore(player2) ?></label>

这可能与您的 url 设置不完全相同,但显示了您需要如何进行设置。您需要从函数返回值(或者根本不使用函数以便可以访问 $playerThrow)

您在提交的输入标签中使用了错误的 from 属性。更改下面的行

<input type="submit" name="Submit" class="btn btn-primary" action="calcScore">

<input type="submit" name="Submit" class="btn btn-primary" formaction="calcScore">

有关输入formaction属性的更多详细信息:http://www.w3schools.com/tags/att_input_formaction.asp

在当前代码中,在提交表单时未找到操作,因此您看不到输出。

如果您直接从页面而不是外部文件调用 calcScore(),那么您需要这样调用它:

<input type="submit" name="Submit" class="btn btn-primary" action="calcScore()">

如果您从外部文件调用它,您可能需要在文件内调用该函数,如下所示:

function calcScore()
{
    $playerThrow = $_GET["score"];
    $player1Score = $playerThrow;
}
calcScore();