diff --git a/public/templates/manage_users.php b/public/templates/manage_users.php
index 93c28fced4963bc85a1593b5fcde370fb18615c8..226abcf8596f09c56c45f4a3be1d7c558ccc3079 100644
--- a/public/templates/manage_users.php
+++ b/public/templates/manage_users.php
@@ -54,7 +54,9 @@ if ($i > 0) print end_table();
 // on whether or not a username was submitted to the script.
 $mode = empty($user->id) ? "Create" : "Edit";
 print subtitle(sprintf(T_('%s a User'), T_($mode)));
-print start_form("{$app->issuer}manage_users/$mode?id={$user->id}");
+$extra = "";
+if (isset($_GET['user_id'])) $extra = "?id={$user->id}";
+print start_form("{$app->issuer}manage_users/$mode$extra");
 
 print start_table();
 print table_row(T_("Firstname"), text_field("wfirstname", $user->firstname, 20, 20));