基于文本框输入打开url的HTML

基于文本框输入打开url的HTML,html,forms,Html,Forms,我只知道基本的HTML 我想在我的网站上放置一个文本框,如果用户输入订单号,它将打开指向该订单摘要的链接 指向这些订单摘要的链接以ORDERNUMBER-DATE格式保存在我的web服务器上(示例:) 我只需要2个文本框,用户在其中输入订单号和日期。 单击“提交”时,它会自动将用户带到链接。仅凭HTML是不够的。最好的选择是使用Javascript(可能是jQuery)获取文本框的内容,然后当按下submit按钮时,让浏览器重定向到静态路径和动态订单信息。HTML的示例可能如下所示: <f

我只知道基本的HTML

我想在我的网站上放置一个文本框,如果用户输入订单号,它将打开指向该订单摘要的链接

指向这些订单摘要的链接以ORDERNUMBER-DATE格式保存在我的web服务器上(示例:)

我只需要2个文本框,用户在其中输入订单号和日期。
单击“提交”时,它会自动将用户带到链接。

仅凭HTML是不够的。最好的选择是使用Javascript(可能是jQuery)获取文本框的内容,然后当按下submit按钮时,让浏览器重定向到静态路径和动态订单信息。HTML的示例可能如下所示:

<form>
    <input id="order" name="order" type="text" required>
    <input id="date" name="date" type="date" required>
    <input type="submit" value="submit">
</form>

显然,在执行重定向之前,您需要验证并确保输入是安全的。阅读一下,这是用PHP实现的一种方法。当然,您需要验证用户是否以正确的格式输入了数据,但这是另一章

findorder.php



更新:我添加了文件_exists位。请注意,这里不能传递正确的URL,只能传递文件路径。

如何输入jquery?我是个新手!如何将jquery部分放入这个html中?@yash。您必须先学习一点Javascript。我建议用谷歌搜索HTML
标签。编写Javascript代码后,应将其嵌入HTML页面上的脚本标记中。因此,此j查询应位于网页的脚本标记中?@yash。是的,Javascript(不要将其与jQuery混淆)嵌入到脚本标记中。显然,我的代码并不完整。您需要创建自己的特定实现。您能告诉我如何在这种情况下管理重定向吗?例如,如果找不到订单,它应该重定向到特定页面?此脚本将创建重定向,但正如您可能注意到的,它也将重定向到不存在的页面/订单。有几种方法可以做到这一点,但最好的方法是如果您能够访问并理解包含订单的底层数据库。然后您可以使用SQL查询进行检查。我没有为这些html文件使用数据库。我想说的是,当我输入一个错误的条目时,它会自动重定向到一个网站。我希望代码,看看是否提交它是重定向到一个特定的网站,如果是,然后重定向到一个由我提供的链接。这怎么可能?代码应该在重定向之前在内部检查所有这些,然后再执行重定向。如果脚本和静态订单文件在同一个系统上,您可以简单地尝试PHP的
文件\u exists()
。很抱歉再次问了两次这个问题。如何使用您提供的代码中存在的文件?
$('form').on('submit', function(e) {
  e.preventDefault();
  var order = $('#order').val();
  var date = $('#date').val();

  // Format date and order input as necessary

  // Construct URL path and redirect here
  window.location('http://www.mywebsite.com/orders/' + order + '-' + date + '.html');
});
<?php
if (!empty($_POST['order']) && !empty($_POST['date'])) {

    $redirect = "orders/" . $_POST['order'] . "-" . $_POST['date'] . ".html";

    if(file_exists($redirect) == true) {
        header('Location: ' . $redirect);
        die();
    }
    else {
        echo "Order not found";
    }

}
?>

<form action="findorder.php" method="POST">
    <input id="order" name="order" type="text" placeholder="Order number">
    <input id="date" name="date" type="date" placeholder="Date">
    <input type="submit" value="submit">
</form>