diff -ur links-0.96/html.c links-0.96+noqstrip/html.c
--- links-0.96/html.c	Mon Jun 18 21:56:09 2001
+++ links-0.96+noqstrip/html.c	Tue Sep 18 20:35:31 2001
@@ -1040,7 +1040,7 @@
 	} else {
 		if ((ch = strchr(form->action = stracpy(format.href_base), POST_CHAR))) *ch = 0;
 	}
-	if ((ch = strchr(form->action, '?'))) *ch = 0;
+/*	if ((ch = strchr(form->action, '?'))) *ch = 0;*/
 	if ((al = get_target(a))) {
 		form->target = al;
 	} else {
@@ -1048,10 +1048,6 @@
 	}
 	form->method = FM_GET;
 	if ((al = get_attr_val(a, "method"))) {
-		if (!strcasecmp(al, "get")) {
-			form->method = FM_GET;
-			if (ch = strchr(form->action, '?')) *ch = 0;
-		}
 		if (!strcasecmp(al, "post")) {
 			char *ax;
 			form->method = FM_POST;
diff -ur links-0.96/view.c links-0.96+noqstrip/view.c
--- links-0.96/view.c	Tue Sep 18 23:11:42 2001
+++ links-0.96+noqstrip/view.c	Tue Sep 18 20:44:15 2001
@@ -1320,7 +1320,10 @@
 				pos = stracpy(pos);
 				*poss = 0;
 			}
-			strcat(go, "?");
+			if (strchr(go, '?'))
+			  strcat(go, "&");
+			else
+			  strcat(go, "?");
 			strcat(go, data);
 			if (pos) strcat(go, pos), mem_free(pos);
 		}
