Search code examples
phpurlmergeuser-input

How to combine two input fields and open as URL for different URL combination?


My website customer frequently looking tracking details, every time they need to go different types courier website and enter tracking id.

All my courier websites tracking url position same, 1) courier website 2) id

eg: (More than one courier service and their respective tracking URL)

1) www.courier.com?trackingid=12345

2) www.courier.in/track/id=1234&type=0&service=0

How to merge two input fields.

eg:

enter image description here

Code :

<!DOCTYPE HTML>
<html>
<body>
    <form action="#" method="post">
        Select Courier :
        <select name="courier">
            <option value="">--Please choose an option--</option>
            <option value="professional_courier">Professional Courier</option>
            <option value="india_post">India Post</option>
        </select>

        Trackingid: <input type="text" name="trackingid"><br>
        <input type="submit">

    </form>
    <?php
    ini_set('display_startup_errors', 1);
    ini_set('display_errors', 1);
    error_reporting(-1);

    // if (!empty($_POST)): header("Location: https://www.tpcindia.com/Tracking2014.aspx?id=".$_POST["trackingid"]."&type=0&service=0");
    // endif;


    if (!empty($_POST['courier']) && !empty($_POST['trackingid'])) {
        switch ($_POST['courier']) {
            case 'professional_courier':
                $url = "https://www.tpcindia.com/Tracking2014.aspx?id=".$_POST["trackingid"]."&type=0&service=0";
                break;
            case 'india_post':
                $url = "https://www.indiapost.gov.in/_layouts/15/dop.portal.tracking/trackconsignment.aspx";
                break;
            default:
                throw new RuntimeException(sprintf('Unknown courier "%s"', $_POST['courier']));

                header('Location: ' . $url);
        };
    };
    ?>

</body>

</html>

Not working. for single url its working(see below working code),

<!DOCTYPE HTML>
<html>  
<body>

<form action="#" method="post">
Select Courier :
<select name="courier">
  <option value="">--Please choose an option--</option>
  <option value="professional_courier">Professional Courier</option>
  <option value="india_post">India Post</option>
</select>

Trackingid: <input type="text" name="trackingid"><br>
<input type="submit">

</form>



<?php 
if (!empty($_POST)): header("Location: https://www.tpcindia.com/Tracking2014.aspx?id=".$_POST["trackingid"]."&type=0&service=0");
endif;

?>
</body>
</html>

Solution

  • Finally working, thanks to everyone.

    <!DOCTYPE HTML>
    <html>
    
    <body>
    
        <form action="#" method="POST">
            Select Courier :
            <select name="courier">
                <option value="">--Please choose an option--</option>
                <option value="professional_courier">Professional Courier</option>
                <option value="india_post">India Post</option>
            </select>
    
            Trackingid: <input type="text" name="trackingid">
            <input type="submit">
    
        </form>
    
        <?php
        if (isset($_POST['courier'])) {
            if ('professional_courier' === $_POST['courier']) {
                header("Location: https://www.tpcindia.com/Tracking2014.aspx?id=" . $_POST["trackingid"] . "&type=0&service=0");
            } else if ('india_post' === $_POST['courier']) {
                header("Location: https://www.dhl.com/en/express/tracking.html?AWB=" . $_POST["trackingid"] . "&brand=DHL");
            }
        }
        ?>
    </body>
    
    </html>