首页 > 解决方案 > 通过表格跟踪 DHL 的交付状态

问题描述

我有个问题。我有以下 PHP 脚本

<?php
$dhlsendnumber=$_GET['dhlsendnumber'];
{
   $uri="https://www.dhl.de/de/privatkunden/dhl-sendungsverfolgung.html?piececode=$dhlsendenummer";
   
   header("location: $uri");
   
   Exit;
}
?>

这使我可以使用带有以下 PHP 的表单检查 DHL 的交货编号的状态。

    <?php
// basic form saved under the name: dhlsendeverfolgung.php
?>

<form action="dhlsendeverfolgung.php" method="get">

<p>Enter your DHL shipment number<br>.
<input type="Text" name="dhlsendenummer"></p>

<input type="Submit" name="" value="Request shipment status of your DHL package">

</form>

也许有更好的方法可以做到这一点,但到目前为止这有效。

但这只有在我将 dhlsendeverfolgung.php 放在根目录中时才有效。

但我希望能够使用带有上述代码的表单从我的网站的子页面(如 https://samplepage/dhl-tracken)跟踪交货编号。但我不知道我必须将 php 文件放在哪个文件夹中才能实现此目的,或者我必须这样做才能找到链接,就像我在主页上有表单并在 php 文件的根目录中一样。

有人可以帮助我实现这一目标吗?

此外,我想实现带有查询的 DHL 网页在新窗口中打开而不是在同一窗口中打开,

我需要做什么?

非常感谢帮助

标签: phptrackingshippingdhl

解决方案


您实际上可以简化很多,并完全使用 javascript 取消其他页面:

function sendToDHL(form) {
  let num = form.querySelector('input[name="dhlsendenummer"]').value.trim();
  if (!num) {
    alert("Please input a tracking number");
    return;
  }
  let url = "https://www.dhl.de/de/privatkunden/dhl-sendungsverfolgung.html?piececode=" + num;
  window.open(url, 'DHLTracking');
}
<form onsubmit="sendToDHL(this); return false;">
  <p>Enter your DHL shipment number.<br>
    <input type="text" name="dhlsendenummer"></p>
  <input type="submit" name="" value="Request shipment status of your DHL package">
</form>


推荐阅读