у меня есть form
ввести номер матча и отправить через PHP GET
на URL, скажем test.php?match=
Я добавил стрелки для простоты использования (время важно для конечного пользователя), которые идут вверх на одно совпадение и вниз на одно совпадение, и они работают нормально, пока вы сначала не введете число. Стрелки добавляют число ОК, и я могу начать с 0 и идти вверх, но если я начну с другого номера, он будет работать один раз, но удаляет номер из URL (например, переход к test.php?match=3
и нажатие стрелки вправо отображает совпадение 4, но URL-адрес изменяется на test.php?match=
)
Вот мой код:
<?php
$next = $_GET["match"] + "1";
$last = $_GET["match"] - "1";
echo "<form action=\"test.php\" method=\"GET\">
Match<br>
<input style=\"font-size:24px;\" autofocus=\"autofocus\" type=\"number\" size=\"4\" name=\"match\" value=\"" . $_GET["match"] . "\">
<a href=\"sql.php?match=\"><button style=\"font-size:24px;\">Show All</button></a>
<a href=\"sql.php?match=" . $last . "\"><button style=\"font-size:24px;\"><</button></a>
<a href=\"sql.php?match=" . $next . "\"><button style=\"font-size:24px;\">></button></a>
<input style=\"font-size:24px;\" type=\"submit\" value=\"Submit\">
</form>";
?>
Спасибо!
Попробуйте заменить свою форму на это:
echo "<form action= 'test.php' method='GET'>
Match<br>
<input style='font-size:24px;' autofocus='autofocus' type='number' size='4' name='match' value='" . $_GET["match"] . "'>
<a href='sql.php?match='><button style='font-size:24px;'>Show All</button></a>
<a href='sql.php?match=" . $last . "' style = 'padding: 5px; border-radius: 5px; background: rgb(240, 240, 240); border: 1px solid silver;'><<<</a>
<a href='sql.php?match=" . $next . "' style = 'padding: 5px; border-radius: 5px; background: rgb(240, 240, 240); border: 1px solid silver;'>>>></a>
<input style='font-size:24px;' type='submit' value='Submit'>
</form>";
<a>
не направляет вас по ссылке, если <button>
внутри это щелкнуло. Похоже, что вы нажимаете <button>
а не <a>
, Так что в качестве предложения, вы можете стилизовать вас <a>
так что это может выглядеть как кнопка.
Может быть, что-то вроде этого, что вы хотите:
<?php
$next = $_GET["match"] + "1";
$last = $_GET["match"] - "1";
?>
<form action="" method="GET">
Match<br>
<input style="font-size:24px;" autofocus="autofocus" type="number" size="4" name="match" value="<?php echo $_GET['match'] ?>">
<button style="font-size:24px;"><a href="?" style="text-decoration:none; color:#000;">Show All</a></button>
<button style="font-size:24px;"><a href="?match=<?php echo $last ?>" style="text-decoration:none; color:#000;"><</a></button>
<button style="font-size:24px;"><a href="?match=<?php echo $next ?>" style="text-decoration:none; color:#000;">></a></button>
<input style="font-size:24px;" type="submit" value="Submit">
</form>
Я думаю, что лучше разделить php и html форму (не отображать форму, а только значение, которое вы хотите передать)