我有一个非常基本的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尝试回送变量时,它们是空的。
更新
根据建议检查来源后,它出现如下:
data: longform + "&domain=example.com&useragent=Mozilla/5.0
答案 0 :(得分:1)
您需要在 domain = 之前添加&符号(&amp;)。否则,它应该没问题。
在页面上执行查看源,并确保javascript字符串看起来也正确。
答案 1 :(得分:1)
如果你添加PHP的urlencode()
-function:
"domain=<?php echo urlencode($domain); ?>&useragent=<?php echo urlencode($useragent); ?>&ip=<?php echo urlencode($ip); ?>&cookieuser=<?php echo urlencode($cookieuser); ?>"
这可以防止可能由您的数据引起的语法错误(即,如果您有反斜杠或其他特殊字符)。
答案 2 :(得分:0)
我宁愿把所有数据都放在隐藏的输入中,然后一次串行化。
汤姆