how to load a new page on click of input button

I know this is extremely basic, but I am editing a wordpress plugin for my site and I want to know how to send the user to the thankyou.php page once they click the place_order
button. I tried changing the value of the input to thankyou.php but that didn’t work.

Thanks in advance, here’s my php file. (The input is at the bottom of the code)

<?php
/**
 * Pay for order form template
 *
 * DISCLAIMER
 *
 * Do not edit or add directly to this file if you wish to upgrade Jigoshop to newer
 * versions in the future. If you wish to customise Jigoshop core for your needs,
 * please use our GitHub repository to publish essential changes for consideration.
 *
 * @package    Jigoshop
 * @category   Checkout
 * @author     Jigowatt
 * @copyright  Copyright (c) 2011 Jigowatt Ltd.
 * @license    http://jigoshop.com/license/commercial-edition
 */
?>

<?php global $order; ?>
<form id="order_review" method="post">

    <table class="shop_table">
        <thead>
            <tr>
                <th><?php _e('Product', 'jigoshop'); ?></th>
                <th><?php _e('Qty', 'jigoshop'); ?></th>
                <th><?php _e('Totals', 'jigoshop'); ?></th>
            </tr>
        </thead>
        <tfoot>
            <tr>
                <td colspan="2"><?php _e('Subtotal', 'jigoshop'); ?></td>
                <td><?php echo $order->get_subtotal_to_display(); ?></td>
            </tr>
            <?php if ($order->order_shipping>0) : ?><tr>
                <td colspan="2"><?php _e('Shipping', 'jigoshop'); ?></td>
                <td><?php echo $order->get_shipping_to_display(); ?></small></td>
            </tr><?php endif; ?>
            <?php if ($order->get_total_tax()>0) : ?><tr>
                <td colspan="2"><?php _e('Tax', 'jigoshop'); ?></td>
                <td><?php echo jigoshop_price($order->get_total_tax()); ?></td>
            </tr><?php endif; ?>
            <?php if ($order->order_discount>0) : ?><tr class="discount">
                <td colspan="2"><?php _e('Discount', 'jigoshop'); ?></td>
                <td>-<?php echo jigoshop_price($order->order_discount); ?></td>
            </tr><?php endif; ?>
            <tr>
                <td colspan="2"><strong><?php _e('Grand Total', 'jigoshop'); ?></strong></td>
                <td><strong><?php echo jigoshop_price($order->order_total); ?></strong></td>
            </tr>
        </tfoot>
        <tbody>
            <?php
            if (sizeof($order->items)>0) : 
                foreach ($order->items as $item) :
                    echo '
                        <tr>
                            <td>'.$item['name'].'</td>
                            <td>'.$item['qty'].'</td>
                            <td>'.jigoshop_price( $item['cost']*$item['qty'] ).'</td>
                        </tr>';
                endforeach; 
            endif;
            ?>
        </tbody>
    </table>

    <div id="payment">

        <div class="form-row">
            <?php jigoshop::nonce_field('pay')?>
            <input type="submit" class="button-alt" name="pay" id="place_order" value="<?php _e('Pay for order', 'jigoshop'); ?>" />

        </div>

    </div>

</form>

Related posts

Leave a Reply

2 comments

  1. You’re not specifying the action of the form. The action is the file where the data collected with the form is send to be processed. The following line:

    <form id="order_review" method="post">
    

    Should be:

    <form id="order_review" method="post" action="tankyou.php">
    
  2. You could use redirection

    // This will NOT work, the browser received the HTML tag before the script
    header( 'Location: http://www.yoursite.com/thankyou.php' );
    

    OR with meta tag

    <meta http-equiv="refresh" content="0;url= http://www.yoursite.com/thankyou.php">
    

    You can replace the 0 above for increase redirection wait time