Кнопка HTML: Перенаправление по щелчку
<input type='submit' name='submit' value='Register' class='register' />
Как мне сделать эту ссылку на веб-сайт по щелчку мыши?
5 answers
Вот один из способов сделать это с вашим настоящим кодом (кнопка "отправить") с помощью PHP header()
функция.
(handler.php)
<?php
if(isset($_POST['submit'])){
header("Location: http://www.example.com/page.php");
exit;
}
И я предполагаю, что с кодом, который у вас есть в вашем вопросе, что-то похожее на эффект:
<form action="handler.php" method="post">
Username:
<input type='text' name='username' />
<input type='submit' name='submit' value='Register' class='register' />
</form>
Конечно, я не включил возможные $username=$_POST['username'];
, которые могут быть в вашем PHP, в зависимости от того, как вы будете его использовать.
РЕДАКТИРОВАТЬ
После прочтения mplungjan's comment
сделали небольшое имя менять. Я еще не знаю, почему использование имени submit
считается небезопасным, после попытки найти (или) причину этого в Google. Я надеюсь получить или найти ответ на этот вопрос.
( Редактировать-выводы) Смотрите дополнительную информацию ниже, которую я нашел на сегодняшний день.
(handler.php)
<?php
if(isset($_POST['reg_button'])){
header("Location: http://www.example.com/page.php");
exit;
}
И я предполагаю, что с кодом, который у вас есть в вашем вопросе, что-то похожее на эффект:
<form action="handler.php" method="post">
Username:
<input type='text' name='username' />
<input type='submit' name='reg_button' value='Register' class='register' />
</form>
Выводы:
Статья(статьи), с которыми я столкнулся на тема, которая mplungjan
упоминалась в комментариях:
Если вы собираетесь использовать PHP (серверный) метод, рассмотрите возможность использования следующего, заимствованного из статьи этого веб-сайта о межсайтовых сценариях.
<input name="foo" value="<?php print htmlspecialchars($foo); ?>">
И в вашем случае:
<input type='submit' name='reg_button' value='<?php print htmlspecialchars($reg_button); ?>' class='register' />
Заимствовано из mplungjan's
комментарий:
1) никогда не нажимайте кнопку отправки name="submit"
2) используйте ссылку или кнопку <input type="button" onclick="location='somepage.html'" />
3) Просто используйте name="Submit"
или submitted
, и проблем можно будет избежать.
(Спасибо за дополнительный вклад mplungjan
).
Вы должны понимать поведение используемого тега по умолчанию. Тег ввода "Отправить" отправляет пользователя в действие формы. Я не уверен, что вы пытаетесь сделать, поэтому я не уверен, что вы даже используете правильный тег. Возможно, рассмотрим теги привязки?
Мое лучшее предположение, учитывая расплывчатый вопрос:
<form action="{URL}" method="post">
<input type='submit' name='submit' value='Register' class='register' />
</form>
Или
<a href="{URL}">Register</a>
<input type="button" onclick="window.location='YourUrlHere'" class="register" value="Register"/>
Вы можете использовать тег привязки для этой проблемы, тег привязки используется для перенаправления с одной страницы на другую всего одним щелчком мыши. Здесь вы можете использовать это следующим образом:
<a href="url"><input type='submit' name='submit' value='Register' class='register' /></a>
Примечание: href - это тег, который содержит путь к желаемому месту назначения. Вот и все, продолжайте кодировать...:)
Вы можете выбрать <a href="{URL}">Register</a>
, как только что было сказано, или, если хотите, вы также можете использовать тег кнопки <button onclick="myFunction()">Click me</button>
, где myFunction - это ваш код JavaScript на другую страницу