Reading GET Variable Values Without Knowing The Variable Name / Key

I recently ran into an issue where I needed the values from GET variables, but I did not know what the variables name was. The problem was related to the Facebook API. The API used PHP to get the current URL, but the current URL was rewritten using Apaches Mod Rewrite, making it an invalid URL (technically). To overcome this I needed a way to regenerate the URL of the page without knowing how many GET variables there were going to be and what they would be called. After a bit of messing around this is what I came up with.

E.G. You have a rewritten URL that looks like the following
http://example.net/page/123/345.html

This URL works with Apache, but it is not a proper URL that another website can understand without having the information to map the variable names.  The code snippet below will take a URL that you have rewritten using mod rewrite or any other method and output it as a URL with the GET variables present.

You will need to replace the name of the URL to the url of your website. If you run this on any page it will generate the full URL of your page.

http://example.net/page/123/345.html   =>   http://example.net/page.php?var1=123&var2=345

$filename = $_SERVER['PHP_SELF'];
$url = $filename;
if(isset($_GET))
{
  $url = $url."?";
  $counter = 0;
  foreach($_GET as $var => $value)
  {
    if($counter != 0)
    {
      $url = $url."&";
    }
    $url = $url."&".$var."=".$value;
    $counter ++;
  }
}
$currentUrl = "http://example.net".$url;

Related Articles

Related Questions

Which Linux distribution would work best for my older Windows 11 laptop?

I'm already fairly comfortable with Linux because I currently use Pop!_OS, but I'd like to replace Windows 11 on another machine. Windows feels extremely...

PC randomly loses power and restarts despite a 1200W PSU and UPS

My three-year-old PC has suddenly gone black and restarted twice within two weeks. The first failure happened while playing a demanding modded Minecraft server,...

What’s the safest way to try Linux before replacing Windows?

I've experimented with several Linux distributions, including Mint, Arch, and Ubuntu Server, and I'm thinking about installing Linux on actual hardware. I need my...

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Latest Tools

Erase Gemini Nano Banana Watermark

Below is a simple content eraser tool. It works very similar to the content aware fill tool that is used in Photoshop. You can...

Keep Your Screen Awake Tool

This simple online stay awake tool prevents your computer screen from going to sleep while you have this page open. It runs entirely in your...

Neural Network Simulation Tool

The Neural Network Visual Builder is an interactive, client-side tool designed to demystify deep learning. It allows users to drag-and-drop neural network layers to...

Ray Trace Simulator – Interactive Optical Ray Tracing Tool

This ray trace simulator lets you visualise how light rays move through an optical system in real time. You can trace beams as they...

Interactive CPU Architecture Simulator

This is an Interactive CPU Architecture Simulator that provides a hands-on, visual learning experience for understanding how a processor executes code. It models a...

AI Image Upscaler

Our AI Image Upscaler allows you to upload any image and instantly increase its resolution using advanced upscaling models. Choose between 2x, 3x or...

Latest Posts

Latest Questions