Javascript 尝试使用PHP会话创建一个google utm查询字符串并用JSON解析它
我试图用PHP会话创建一个Google UTM查询字符串,然后用JSON解析它。我正在努力确保我没有任何错误。我想会话url查询字符串,其中包含google utm参数(adwords活动),然后解析这些值并将它们插入到隐藏的表单字段中。这看起来对吗?我的代码如下。让我知道。谢谢大家!Javascript 尝试使用PHP会话创建一个google utm查询字符串并用JSON解析它,javascript,php,json,wordpress,utm,Javascript,Php,Json,Wordpress,Utm,我试图用PHP会话创建一个Google UTM查询字符串,然后用JSON解析它。我正在努力确保我没有任何错误。我想会话url查询字符串,其中包含google utm参数(adwords活动),然后解析这些值并将它们插入到隐藏的表单字段中。这看起来对吗?我的代码如下。让我知道。谢谢大家! <?php if (!session_id()) { session_start(); } if (!isset($_SESSION['googy'])) { $_SESSION['
<?php
if (!session_id())
{
session_start();
}
if (!isset($_SESSION['googy']))
{
$_SESSION['googy'] = $_SERVER["QUERY_STRING"];
}
if (isset ($_SESSION['googy']) )
$goo .= $_SESSION['googy'];
?>
<script type="text/javascript">
jQuery(document).ready(function() {
var query = '<?php echo $goo; ?>';
query = query.replace(/%20/g," ");
query = query.replace(/%21/g,"!");
query = query.replace(/%22/g,'"');
query = query.replace(/%23/g,"#");
query = query.replace(/%24/g,"$");
query = query.replace(/%25/g,"%");
query = query.replace(/%26/g,"&");
query = query.replace(/%27/g,"'");
query = query.replace(/%28/g,"(");
query = query.replace(/%29/g,")");
query = query.replace(/%2A/g,"*");
query = query.replace(/%2B/g,"+");
query = query.replace(/%2C/g,",");
query = query.replace(/%2D/g,"-");
query = query.replace(/%2E/g,".");
query = query.replace(/%2F/g,"/");
var parameters = {};
if (query) {
var search_arr = query.split("&");
for (var item in search_arr) {
if (search_arr[item]) {
var item_arr = search_arr[item].split("=");
if (item_arr[1]) {
parameters[item_arr[0]] = item_arr[1];
}
}
}
}
if (JSON.stringify(parameters) != '{}') {
for (var prop in parameters) {
jQuery("#" + prop).val(parameters[prop]);
}
}
});
</script>
jQuery(文档).ready(函数(){
var查询=“”;
query=query.replace(/%20/g,“”);
query=query.replace(/%21/g,“!”);
query=query.replace(/%22/g,“”);
query=query.replace(/%23/g,“#”);
query=query.replace(/%24/g,“$”);
query=query.replace(/%25/g,“%”);
query=query.replace(/%26/g,“&”);
query=query.replace(/%27/g,“”);
query=query.replace(/%28/g,“(”);
query=query.replace(/%29/g,“)”;
query=query.replace(/%2A/g,“*”);
query=query.replace(/%2B/g,“+”);
query=query.replace(/%2C/g,“,”);
query=query.replace(/%2D/g,“-”);
query=query.replace(/%2E/g,“.”);
query=query.replace(/%2F/g,“/”);
var参数={};
如果(查询){
var search_arr=query.split(“&”);
for(搜索中的var项目){
如果(搜索[项目]){
var item\u arr=search\u arr[item]。拆分(“”);
如果(第[1]项){
参数[item_arr[0]]=item_arr[1];
}
}
}
}
if(JSON.stringify(参数)!='{}'){
用于(参数中的var prop){
jQuery(“#”+prop).val(参数[prop]);
}
}
});
在编写类似这样的怪物之前,请先阅读手册。有一个用于处理类似字符串的PHP和JavaScript函数。重要的是要了解什么样的事情应该是一个解决的问题,并寻找合适的工具,而不是自己动手做。“这看起来正确吗?“好吧,行吗?如果它起作用,它必须至少基本正确。如果它不起作用,修改你的问题,说明它是如何起作用的。谢谢你们。我相信它现在起作用了。虽然,在我使用query.length和item_arr[1]之前,我在Apache中得到了“file name too long error”,在控制台日志中得到了“Uncaught property'length”。所以,我不确定我是否还需要长度。