2011-12-19 28 views
31

現在、私はhttp://example.com/topic.php?id=14におり、現在のURLを定義しないことによってhttp://example.com/topic.php?id=14&like=likeへのリンクを作成したいと考えています。 <a href="&like=like">Like</a>のようになります。しかし、この最後の1つは私を示しますhttp://example.com/&like=likeURLパラメータを現在のURLに追加するには?

+0

http://stackoverflow.com/questions/486896/adding-a-parameter-to-the-url-with-javascriptまたはhttp://stackoverflow.com/questions/6899097/how-to- URLにパラメータを追加する – reflexiv

答えて

8

既存のクエリ文字列を保存する相対URIを書く方法はありませんが、追加のパラメータを追加します。

は、あなたがする必要があります:あなたがしたいことをいえ

<a href="/topic.php?like=like">Like</a> 

もっとありそうです:あなたは「のように」使用したい場合は

topic.php?id=14&like=like 
+2

多くの方法があります。 Javascriptの使い方については、http://stackoverflow.com/questions/6899097/how-to-add-a-parameter-to-the-urlをご覧ください。 – reflexiv

+4

パスを繰り返す必要はありません。で始まります ?大丈夫。 http://stackoverflow.com/q/7871871/62421 – webjunkie

2

パラメータとしてあなたのリンクがあることが必要

<a href="/topic.php?id=14&like=like">Like</a> 
13
function currentUrl() { 
    $protocol = strpos(strtolower($_SERVER['SERVER_PROTOCOL']),'https') === FALSE ? 'http' : 'https'; 
    $host  = $_SERVER['HTTP_HOST']; 
    $script = $_SERVER['SCRIPT_NAME']; 
    $params = $_SERVER['QUERY_STRING']; 

    return $protocol . '://' . $host . $script . '?' . $params; 
} 

次に、sometで値を追加しますヒンジのような;

echo currentUrl().'&value=myVal'; 
0

次のようにたぶん、あなたは関数を書くことができます。

var addParams = function(key, val, url) { 
    var arr = url.split('?'); 
    if(arr.length == 1) { 
    return url + '?' + key + '=' + val; 
    } 
    else if(arr.length == 2) { 
    var params = arr[1].split('&'); 
    var p = {}; 
    var a = []; 
    var strarr = []; 
    $.each(params, function(index, element) { 
     a = element.split('='); 
     p[a[0]] = a[1]; 
     }) 
    p[key] = val; 
    for(var o in p) { 
     strarr.push(o + '=' + p[o]); 
    } 
    var str = strarr.join('&'); 
    return(arr[0] + '?' + str); 
    } 
} 
4

私はゲーム後半だけど、次のようにあなただけのhttpビルドクエリを使用して?id=14&like=likeを行うことができます。

http_build_query(array_merge($_GET, array("like"=>"like"))) 

あなたが持っていたどんなGETパラメータもまだそこにあり、上書きされる前にlikeがパラメータだった場合、それ以外はそれが最後に含まれます。

関連する問題