Why does = turn into %3D?

hi

<form name="form" action="index.php?page=search" method="get">
  <input type="text" name="page=search&q" />
  <input type="submit" name="Submit" value="Search" />
</form>

when i run this code on the webserver the variables appear in the url string. this is good.
but the url in the browser window has crazy %3f and stuff instead of the ‘=’ sign can anyone enlighten me to the solution for this problem? where have i gone wrong?

index.php?%3Fpage%3Dsearch%26q=ds&Submit=Search

thank you

edit:
if i replace the endcoded string with this
index.php?page=search&q=ds&Submit=Search it works fine…


<form name="form" action="index.php" method="get">
  <input type="hidden" name="page" value="search" />
  <input type="text" name="q" value="" />
  <input type="submit" name="Submit" value="Search" />
</form>

You should pass variables through form fiealds as this way, sign ‘=’ is assumed to be the part of field name and gets encoded.

or use urldecode( ) which reconverts the %NN into characters.

ahh right, thank u. i did attept the hidden variable bit but i did it wrong.
thanks guys!