通过单击 href 链接提交表单,而无需使用提交按钮


Submit a form by clicking href links, without using a submit button

我有一个页面,里面有搜索字段。 该页面旨在将结果放在具有ID的同一页面上,单击提交链接时,结果将显示在下面。提交按钮是一个链接,而不是传统的提交按钮。我的问题是我已经完成了所有 php 工作,但是当我单击显示结果的链接时,php 无法运行。有人可以帮我吗?下面是代码。谢谢

    <form action="" method="post">
                        <div class="col-md-9">
                        <div class="row">
                            <div class="col-md-7 no-padding">
                                <div class="inner">
                                    <h3>Track &amp; Trace</h3>
                                    <span>Already have a load ID, please insert it below</span>
                                </div>
                            </div>
                            <div class="col-md-5 no-padding">
                                <input class="input-fullwidth" name="track" id="track">
                            </div>
                        </div>
                    </div>
                    <div class="col-md-3">
                        <a id="track-it" href="#section-tracking-result" class="btn-custom btn-fullwidth">Track it</a>
                    </div>
                </form>
<?php
     define('DB_HOST','localhost');
     define('DB_USER','username');
     define('DB_PASS','password');
     define('DB_NAME','dbname');
     $conn = mysql_connect(DB_HOST,DB_USER,DB_PASS) or die(mysql_error());
     mysql_select_db(dbname) or die(mysql_error());
     $output = '';
     if(isset($_POST['track'])) {
         if(empty($_POST['track'])) {
             echo "Tracking Code is Required";
         }
        $searchq = $_POST['track'];
        $searchq = preg_replace("#[^0-9a-z]#i", "",$searchq);
        $query = mysql_query("SELECT * FROM track WHERE keywords LIKE '%$searchq%'");
        $count = mysql_num_rows($query);
        if($count == 0) {
             $output = 'There was no search results!';
        } else {
            while($row = mysql_fetch_array($query)) {
                      $consignee = $row['consignee'];
                      $desti = $row['desti'];
                      $date = $row['date'];
                      $id = $row['id'];
            }
        }

    }
?>
<form id="my_form">
<!-- Your Form -->    
<a href="javascript:{}" onclick="document.getElementById('my_form').submit(); return false;">submit</a>
</form>

在此之前,您必须设置一个<form>

您需要将html放入表单中,并且只需要设置传统提交按钮的样式即可。

如果你不想创建一个表单,你可能能够在Javascript中实现你正在做的事情。

但是 PHP 需要你使用<form></form>

提交

试试这个:

<form method="post"> <input type="text" class="input-fullwidth" name="track" id="track" /> <input type="submit" id="track-it" name="submit" class="btn-custom btn-fullwidth" /> </form>

并在您的 PHP 中检查它是否已提交

if(isset($_POST['submit'])) {
    // your checks and execution goes here
}

通过这种方式,您可以检查表单是否已提交,如果轨道输入为空,则说它不应该提交。