Search code examples
url-action

How add multiple actions In URL?


How can I add more than one action to a URL? As I described in the title, I want to add more than one action to a URL. How do I do that?

As a further clarification, I define actions for some parts in an HTML file, and by setting an action, I handle the request in the php file!

Example:

example.com/?order=1&price=high

I appreciate your help.


Solution

  • As i ask and get help from my friend, we can use function like this to solve our problem:

    function shapeSpace_add_var($url, $key, $value) {
        
        $url = preg_replace('/(.*)(?|&)'. $key .'=[^&]+?(&)(.*)/i', '$1$2$4', $url .'&');
        $url = substr($url, 0, -1);
        
        if (strpos($url, '?') === false) {
            return ($url .'?'. $key .'='. $value);
        } else {
            return ($url .'&'. $key .'='. $value);
        }
    }
    

    example:

    $url = 'http://example.com/whatever/?hello=world';
    
    shapeSpace_add_var($url, 'goodbye', 'nightclub');
    

    Result:

    http://example.com/whatever/?hello=world&goodbye=nightclub