Ryan
Ryan

Reputation: 625

Sending multiple GET variables in URL with Javascript

I'm trying to retrieve multiple $_GET variables within PHP. Javascript is sending the URL and it seems to have an issue with the '&' between variables.

One variable works:

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

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

 OUTPUT: LTC

With two variables:

 //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

It just seems to ignore everything after the '&'. I know that the PHP end works fine because if I manually type the address into the browser, it prints both variables.

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

 OUTPUT ON THE PAGE
 priceLTC

Any ideas? It's driving me nuts - Thanks

UPDATE - JAVASCRIPT CODE

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);
}

Upvotes: 0

Views: 200

Answers (1)

andrex
andrex

Reputation: 1032

Separate the url and the data that you will be sending

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);
}

And in your PHP use $_POST or you can do it like this

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

Refer to here for more information jquery .load()

Upvotes: 1

Related Questions