繁体   English   中英

PHP和Ajax:在AJAX中将time_zone作为参数传递

[英]PHP & Ajax: Passing time_zone as a parameter in AJAX

我正在尝试在Ajax请求中传递时区参数

喜欢

 alert(meeting_time);
        alert(meeting_timezone);
    $.ajax({ 
        type: "GET",  
        url: "http://webfaction/UI/user/joinmeeting.php",  
        data: "user_names="+ user_names + "&image=" +file+"&duration="+ duration +"&user_name="+ user_name + "&meeting_id=" + meeting_id + "&moderator_password=" + moderator_password +"&attendee_password=" + attendee_password +
        "&meeting_time=" + meeting_time + "&meeting_timezone=" + meeting_timezone + "&meeting_sms_no=" + meeting_sms_no + "&meeting_logout_url=" + meeting_logout_url +"&meeting_maxp=" + meeting_maxp +"&meeting_name=" + meeting_name ,
        success: function(json){  
               alert(json);
              $('#show_ajax').hide();
            if(!json.error) location.reload(true);

        },

现在我的问题是在ajax请求之前

alert(meeting_timezone);  is printing  `GMT +8.00`

但是在joinmeeting.php页面上

   $meeting_timezone = $_GET['meeting_timezone'];   

   print $meeting_timezone;

上面的打印语句正在打印值GMT 8.00

(+号不在此处打印)

请告诉我如何解决此问题?

在使用POST和GET方法时,这是一种已知情况,您的+号将转换为空格。 通过POST或GET传递数据的正确方法是使用JavaScript中的encodeURIComponent

例如,在您的情况下,请在发送之前执行以下操作:

meeting_timezone = encodeURIComponent(meeting_timezone);

如果您通过以下方式使用JavaScript对URL进行编码,这将有所帮助

encodeURIComponent(uri)

像这样:

data: encodeURIComponent(("user_names="+ user_names + "&image=" +file+"&duration="+ duration +"&user_name="+ user_name + "&meeting_id=" + meeting_id + "&moderator_password=" + moderator_password +"&attendee_password=" + attendee_password +
        "&meeting_time=" + meeting_time + "&meeting_timezone=" + meeting_timezone + "&meeting_sms_no=" + meeting_sms_no + "&meeting_logout_url=" + meeting_logout_url +"&meeting_maxp=" + meeting_maxp +"&meeting_name=" + meeting_name )

还看一下这个问题:

如何用Javascript编码URL?

可能有用

代替将data:参数指定为字符串,而使用对象:

data: { user_names: user_names,
        image: file,
        ...
        meeting_timezone: meeting_timezone,
        ...
      }

然后,jQuery将负责将其正确转换为查询字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM