|
Posted by Gordon Burditt on 01/23/06 23:38
>I'm biting my nails on this for several days now, hope that someone of
>you can help me...:
>
>On my page, the user can display tables, created out of a database. So I
>have several <a href> links to display the various tables. They all look
>something like:
>
><a href=this_page.php?table=mytable1>the first table</a>
><a href=this_page.php?table=mytable2>the second table</a>
><a href=this_page.php?table=mytable3>the third table</a>
>
>etc.
>
>so the user clicks on a link and gets the table. now, when he goes back
>to the main page, and chooses another link, he always returns to the
>initial table, because the $table variable is still somehow "active"
You should be looking at $_GET['table'], not $table.
And turn off register_globals.
>I tried to unset the $_GET array at the start of the code of the main
>page, but still it does not work.
Don't even try this. Altering the $_GET array is a lot like trying
to resurrect someone by retouching their X-rays: editing a copy
does not alter the original.
>When i do a print_r($_GET) before and
>after the unset, it shows me that in the $_GET array exists before the
>unset, but is away after the unset, so everything should be fine.
Consider $_GET read-only, since the browser does not get to see the
modified copy.
>But why does the $table variable still remain in the system?!?
Because the browser sends it again (as $_GET['table'], hopefully
not as $table). I'm not sure you have shown enough detail to
determine why. The fact that you are using links relative to the
current page might have something to do with it.
Gordon L. Burditt
[Back to original message]
|