Как передать переменные URL в JavaScript в PHP - PullRequest
1 голос
/ 10 ноября 2011

Мне нужно взять переменную URL-адреса на страницу PHP, а затем передать ее в некоторый JavaScript, который находится в HTML позже на странице. Вот где мне нужно использовать переменную:

function dosubmit( ) {
new Ajax.Updater( 'result', 'dial.php', { method: 'post' , parameters: $('dialer').serialize() } );
$('dialer').reset();
}

переменная URL отформатирована как dialout.php? Ext = 1234. Он хранится в PHP как $ ext. результат - это div, в который будет возвращен html, а номеронабиратель - это форма, в которую пользователь вводит номер телефона; Мне нужно передать его вместе с переменной $ ext в dial.php. Я думал объединить их как

var ext = "<? $uext ?>";
var par = $('dialer').serialize();
var url = par;

, а затем использовать URL вместо $('dialer').serialize(). Это не работает, хотя; Отчеты dial.php никогда не получают переменную ext. Каков наилучший способ переместить переменную URL в PHP, затем в js, а затем опубликовать ее обратно в PHP? Я заранее извиняюсь, если что-то неправильно объяснил, для меня это все ново.

Спасибо!

Ответы [ 3 ]

0 голосов
/ 10 ноября 2011

Я не могу полностью понять, что вы хотите, но для подобных случаев я использовал: от URL до метода PHP GET, от PHP до JS JSON с jsonencode () (ajax) и, наконец, POST или GET в ajax на страницу php.

Хотя должны быть лучшие способы сделать это.

Посмотрев еще раз на ваш пример, я увидел, что вы используете php внутри javascript, но у вас нет эха, поэтому должно быть так:

var ext = "<? echo $uext; ?>";
0 голосов
/ 10 ноября 2011

Если это просто параметр get, как вы упомянули, нет причин, по которым вы не можете получить к нему прямой доступ в JavaScript. Поскольку кажется, что вы используете jQuery, вы можете взглянуть на плагин Query String Object .

0 голосов
/ 10 ноября 2011

У вас правильная идея, но вам нужно использовать команду типа print или echo для заполнения переменной:

var ext = "<? echo $uext ?>";

В противном случае $uext само по себе, поскольку оператор PHP эффективно это делаетничего.

Кроме того, вам необходимо включить переменную ext в список параметров.Ваш текущий код в том виде, в каком он есть, больше не ссылается на ext после его заполнения:

var par = $('dialer').serialize();
par += '&ext=' + ext;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...