After token verification reset form doesn't process
===

A user forgets password on my site.
They enter username and an email is fired off containing a link with a token appended to the url of the reset page.
When the link is clicked, token is verified for existence and expiry.
If good, reset password form is shown else error message and Try Again.
All is good to here.
When the user enters a new password and hits Submit, the appended part of the url disappears and just the regular page url is in the address bar.
The reset password form is just sitting there blank.
Since I use $_GET to retrieve the token and $_POST to process the form, could this be my problem?
I include the page code here:

    <?php
    require_once ('functions.inc.php');
    include("header.php");
    require_once ('config.inc.php');
    ?>
    <body> 
    <div data-role="page" id="resetpassword">
	    <div data-role="header">
		    <h1>Reset Password</h1>
	    </div>
	    <div data-role="content">
    <?php
    $page_title = 'ResetPassword';
    if ($_SERVER['REQUEST_METHOD'] == 'GET') { 
    $tk = ($_GET['token']);
    $q1 = "SELECT uname, request_time FROM users WHERE token = '$tk'";
	    $r1 = mysqli_query($dbconn,$q1)or die("Error: ".mysqli_error($dbconn));
	    $row = mysqli_fetch_array($r1);	
	    $user = $row['uname'];
	    $then = $row['request_time'];
	    //echo $then;
	    $now = time();
	    //echo $now;
	    $expired = ($now - $then);
	    //echo $expired;
	    $num_rows = mysqli_num_rows($r1);		
	    if ($num_rows !== 1 || $expired > 900){
	    echo "An error has prevented a password change.<br />Most likely the link has       expired.<br />Please try again.";	
	    ?>
	    </div>
	    <div data-role="footer" class="ui-bar">
	    <a href="../index.php" data-role="button">Try Again</a>	
	    </div><!-- /footer -->
	    </div>
	    <?php
	    exit();
    } 			
		    if ($_SERVER['REQUEST_METHOD'] == 'POST') { 		
		    $trimmed = array_map('trim', $_POST);
		    if (preg_match ('/^[[:alnum:]]{8,20}$/', ($trimmed['password']))) {
			    $p = mysqli_real_escape_string($dbconn, ($trimmed['password']));
			    // hash the password
			    require ("passhash.php");
			    $pass_hash = PassHash::hash($p);
			    } else {
			    echo '<p>Please enter a valid password!</p>';
			    }
			    if ($pass_hash) {
			    $q2 = "UPDATE `users` SET upass='$pass_hash' WHERE uname='$user'";
  			    $r2 = mysqli_query($dbconn, $q2)or die("Error: ".mysqli_error($dbconn));
  			    if ($r2 == TRUE) {
  			    echo "<p>Password Changed!</p>";
  			    }
			    } 				
    ?>
    </div><!-- /content -->
	    <div data-role="footer" class="ui-bar">
    <a href="../index.php" data-role="button">Login</a>	
	    </div><!-- /footer -->
    </div><!-- /page -->
    <?php
    }
    }
    ?>
    <form id="passwordreset" method="post" action="<?php echo $_SERVER['PHP_SELF']?>" data-  ajax="false"> 
    <p>Choose a new password.<br />
    Letters and numbers only.<br />
    Minimum of 8 Maximum of 20 characters.</p>
    <label for="password" class="ui-hidden-accessible">New Password:</label> 
    <input type="password" name="password" id="password" value="" placeholder="New Password"/>
    <button type="submit" name="submit" value="submit"/>Submit</button>  
    </form>
    </div><!-- /content -->
	    <div data-role="footer" class="ui-bar">
	    </div><!-- /footer -->
    </div><!-- /page -->
    </body>
    </html>				

 			

 