Я пытаюсь изменить значение метки 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;
}
Может кто-нибудь объяснить, почему это ничего не меняет, когда я отправляю номер?
Если ты звонишь calcScore()
непосредственно со страницы, а не из внешнего файла, тогда вам нужно назвать его так:
<input type="submit" name="Submit" class="btn btn-primary" action="calcScore()">
Если вы вызываете его из внешнего файла, вам, вероятно, потребуется вызвать функцию внутри файла, например, так:
function calcScore()
{
$playerThrow = $_GET["score"];
$player1Score = $playerThrow;
}
calcScore();
Вы используете неверный атрибут from во входном теге submit. Изменить ниже строки
<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
В текущем коде при отправке формы оно не находит действия и в результате вы не видите вывод.
Если ваш 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)