смешивание javascript и php переменных в ajax - PullRequest
5 голосов
/ 24 ноября 2010

У меня происходит довольно простая вещь jQuery ajax, но я хочу смешать данные форм, которые извлекаются JS, с некоторыми переменными PHP, и отправить их все как часть ajax GET. Должно ли это работать?:

var longform = $("input:text").serialize(); 
$.ajax({
    url:    'actions/create.php',
    data:   longform + "domain=<?php echo $domain; ?>&useragent=<?php echo $useragent; ?>&ip=<?php echo $ip; ?>&cookieuser=<?php echo $cookieuser; ?>",

В настоящее время, когда create.php пытается вывести переменные обратно, они пусты.

UPDATE

После проверки источника, как предложено, он выглядит так:

data:   longform + "&domain=example.com&useragent=Mozilla/5.0

Ответы [ 3 ]

1 голос
/ 24 ноября 2010

Все должно быть хорошо, если вы добавите функцию PHP * urlencode() :

"domain=<?php echo urlencode($domain); ?>&useragent=<?php echo urlencode($useragent); ?>&ip=<?php echo urlencode($ip); ?>&cookieuser=<?php echo urlencode($cookieuser); ?>"

Это должно предотвратить синтаксические ошибки, которые могут быть вызваны вашими данными (т. Е. Если у вас есть обратная косая черта или другие специальные символы).

1 голос
/ 24 ноября 2010

Вам необходимо добавить амперсанд (&) перед domain = .В противном случае все должно быть в порядке.

Сделайте Просмотр источника на странице и убедитесь, что строка JavaScript также выглядит правильно.

0 голосов
/ 25 ноября 2010

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

Tom

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...