icoppa Posted March 29, 2008 Share Posted March 29, 2008 Hello All, I'm having trouble figuring this one out. I have a page that does a standard query to a MySQL database. (This works fine) Then I have some <if's> that change the query based on $_GETS if($_GET[view] == "resolved") {$mylink = $_SERVER[php_SELF];} else { $mylink = $_SERVER[php_SELF]."?view=resolved"; } if($_GET[expand] == "yes") {$mylink2 = $_SERVER[php_SELF];} else { $mylink2 = $_SERVER[php_SELF]."?expand=yes"; } These <if's> work fine. =) I have links on the page that will set the $_GET to view=resolved or expand=yes. My Problem: How to get the page to remember my first selection? I click the index.php?view=resolved link and I get just that. I click the index.php?expand=yes link and I get that BUT loose the view=resolved I need the page to remember my first selection so I get somthing like this - index.php?view=resolved&expand=yes Any Tips,Tricks or Critiques Welcome Thank you for your time! Quote Link to comment Share on other sites More sharing options...
ucffool Posted March 29, 2008 Share Posted March 29, 2008 You just want to pass the entire query string on to the next page? <?php // if the page was http://www.example.com/index.php?view=resolved&expand=yes // $_SERVER[QUERY_STRING] = view=resolved&expand=yes $mylink = $_SERVER[php_SELF] . '?' . $_SERVER[QUERY_STRING]; ?> Quote Link to comment Share on other sites More sharing options...
papaface Posted March 29, 2008 Share Posted March 29, 2008 You're supposed to type it like: $_SERVER['PHP_SELF'] not $_SERVER[php_SELF] As for remembering the values, just use sessions. Quote Link to comment Share on other sites More sharing options...
doni49 Posted March 29, 2008 Share Posted March 29, 2008 I'm assuming that there will be times that other variables will be part of the $_GET array which you DON'T want to pass on. When that is the case, you won't want to use the above code. Try this on for size. if($_GET[view] == "resolved") { $mylink = $_SERVER[php_SELF]; if(is_set($_GET['expand'])){$mylink .= "?expand=" . $_GET['expand'];} } else { $mylink = $_SERVER[php_SELF]."?view=resolved"; if(is_set($_GET['expand'])){$mylink .= "&expand=" . $_GET['expand'];} } if($_GET[expand] == "yes") { $mylink2 = $_SERVER[php_SELF]; if(is_set($_GET['resolved'])){$mylink .= "?resolved=" . $_GET['resolved'];} } else { $mylink2 = $_SERVER[php_SELF]."?expand=yes"; if(is_set($_GET['resolved'])){$mylink .= "&resolved=" . $_GET['resolved'];} } Quote Link to comment Share on other sites More sharing options...
ucffool Posted March 29, 2008 Share Posted March 29, 2008 You're supposed to type it like: $_SERVER['PHP_SELF'] not $_SERVER[php_SELF] As for remembering the values, just use sessions. You're absolutely right, that's what I get for typing it before I shutdown and go home. sorry about that. Quote Link to comment Share on other sites More sharing options...
icoppa Posted March 29, 2008 Author Share Posted March 29, 2008 Thank you all! I Wish i would have came to this forum a long time ago! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.