2014-09-22 2 views
0

Я пытаюсь получить несколько переменных $ _GET в PHP. Javascript отправляет URL-адрес и, похоже, имеет проблему с '&' между переменными.Отправка нескольких переменных GET в URL с помощью Javascript

одной переменной работы:

//JAVASCRIPT 
var price = "http://<site>/realtime/bittrex-realtime.php?symbol=LTC"; 

//THE PHP END 
$coinSymbol = $_GET['symbol']; 
echo $coinSymbol 

OUTPUT: LTC 

с двумя переменными:

//JAVASCRIPT 
var price = "http://<site>/realtime/bittrex-realtime.php?type=price&symbol=LTC"; 

//THE PHP END 
$coinSymbol = $_GET['symbol']; 
$type = $_GET['type']; 
echo $coinSymbol 
echo $type 

OUTPUT: price 

Это только кажется, игнорируют все 'после &'. Я знаю, что конец PHP работает отлично, потому что, если я вручную набираю адрес в браузере, он печатает обе переменные.

http://<site>/realtime/bittrex-realtime.php?type=price&symbol=LTC 

OUTPUT ON THE PAGE 
priceLTC 

Любые идеи? Это сводит меня с ума - Спасибо

ОБНОВЛЕНИЕ - JAVASCRIPT КОД

jQuery(document).ready(function() { 
refresh(); 

jQuery('#bittrex-price').load(price); 

}); 

function refresh() { 

    setTimeout(function() { 
     //document.write(mintpalUrl); 
     jQuery('#bittrex-price').fadeOut('slow').load(price).fadeIn('slow'); 

     refresh(); 

    }, 30000); 
} 
+0

Можете ли вы показать нам javascript-код, который отправляется на ваш PHP-скрипт? –

+0

Где JS-код, который использует эту переменную 'price'? – nnnnnn

+2

Совет. Правильными инструментами для отладки в этой ситуации являются 'var_dump' и' print_r', например. 'Var_dump ($ _ GET)'. – Marty

ответ

1

Отделить URL и данные, что вы будете отправлять

var price = "http://<site>/realtime/bittrex-realtime.php"; 

function refresh() { 

    var params = {type:'price', symbol: 'LTC'}; 

    setTimeout(function() { 
     //document.write(mintpalUrl); 
     jQuery('#bittrex-price').fadeOut('slow').load(price, params).fadeIn('slow'); 

     refresh(); 

    }, 30000); 
} 

И в вашем PHP использовать $ _POST или вам может сделать это следующим образом:

$coinSymbol = isset($_POST['symbol']) ? $_POST['symbol'] : $_GET['symbol']; 

См. здесь Дополнительная информация jquery .load()

+0

Я не могу заставить это работать :(- Стоит отметить, что Javascript, который я добавил выше, исправлен в заголовке, и я создаю переменные в теле. Это мой первый опыт работы с Javascript, m not sure, если это имеет значение? Спасибо @andrex – Ryan

+0

@Ryan Я запутался, как вам удалось создать URL-адрес с параметрами в первую очередь? – andrex

+0

Мне нужно получить несколько разных бит информации из http: // /realtime/bittrex-realtime.php - Единственный способ, которым я мог подумать, это использовать переменные $ _GET, чтобы каждый раз, когда он был вызван, отображалась другая информация о битах. 'm не конструировать его с какой-либо конкатенацией ... но @andrex – Ryan