2016-01-18 1 views
2

Я создаю сайт для исследования для своего доктора философии. У меня есть несколько версий одной и той же веб-страницы (разные цвета, разные длины ...), и каждая версия имеет параметры URL.Текущий параметр URL в новой ссылке на странице

Я хотел бы создать ссылку внизу каждой страницы, которая перенаправляет на сайт вопросника, , но автоматически извлекает параметры URL страницы на.

Пример

Текущий URL является:

http://abcmessage.com/abc?message=1&color=blue&lenght=small

Вы нажимаете на ссылку, и это приведет вас на сайт опросника, сохраняя параметры:

http://questionnaire.com/abc?message=1&color=blue&lenght=small

Что я должен поставить рядом с моей ссылкой перенаправления, чтобы сделать это?

я обнаружил, что ниже, но это на самом деле не работает:

$text = '?'; 
$c = 0; 
foreach($_GET as $k => $v){ 
    $text .= ($c>0) ? "&$k=$v" : "$k=$v"; 
    $c++; 
} 
$text = ($text=='?') ? "" : $text; 

echo $text; 

Я должен признать, что я не знаю много о PHP и Java , но я работаю самостоятельно и нужно сделать все, чтобы я научился. Так что спасибо вам всем, кто поможет :)

Приветствия!

Dim

+0

JAVA не JavaScript! – mplungjan

ответ

0

Попробуйте location.seach:

<a href="#" 
onclick="this.href='http://questionnaire.com/abc'+window.location.search">Questionnaire</a> 
+1

И это работало как шарм. Большое спасибо @mplungjan! – DimNC

0

Вы можете использовать http_build_query()

Это можно сделать так:

all_requests = $_GET; 

$build_query_http = http_build_query($all_requests); 

echo "http://questionnaire.com/abc?" . $build_query_http; 

Или вы можете даже удалить все пустые запросы, прежде чем переезд:

foreach ($all_requests as $key => $var_val) { 
    if(empty($var_val) || $var_val=='') 
    { 
    unset($all_requests[$key]); 
    } 
} 

Стоит посмотреть на maximum length of a query string.

+0

Я пробовал это решение, но не понял, как правильно реализовать этот код. Спасибо за вашу помощь. – DimNC

Смежные вопросы