PHP Jquery 字符串的 urlencode

PHP urlencode for Jquery string

我正在努力完成我的项目的最后一部分 - 我有一个文本框,该文本框由格式为 YYYY/MM/DD HH:MM

的日期时间选择器填充

我需要将此值传递给 URL 字符串,然后将其发送到数据库 table。

因为我正在使用模式来收集我需要的额外信息,所以我有一个 Jquery 脚本来更改提交按钮上的 HREF 选项卡:

$(document).on('click','#myModal<?php echo $v['id']; ?> .modal-footer a', function(e)
            {
                e.preventDefault();
                //function to update HREf attribute with values from modal screen
                var uri = <?php urlencode('2016/01/01/ 21:00')?>
                //$('#divert_until_<?php echo $v['id']; ?>').text();

                window.location.href=window.location.href= $(this).attr('href') + '&to=' + $('#divert_to_<?php echo $v['id']; ?> option:selected').text() + '&type= ' + $('#divert_type_<?php echo $v['id']; ?> option:selected').text() + '&until= ' + uri;

            });

目前,我收到了所有信息(ID、TO 和 TYPE),但没有收到来自 UNTIL 的任何信息。上面我试图将固定字符串 '2016/01/01 21:00' 保存到数据库中。

这是我捕捉 URL:

的代码
if(isset($_GET['action']) && $_GET['action']=='add_divert') {

if(!isset($_GET['id']) || !is_numeric($_GET['id'])) {
    $_SESSION['notification'] = array('type'=>'bad','msg'=>$lang['ADMIN_INVALID_ID']);
    redirect(ROOT_URL.'stores.php?search='.$_REQUEST['search'].$pg.$st.$fl);
}

$db = db_connect();
if($db->update('stores',array('divert_enabled'=>1,'divert_type'=>($_GET['type']),'divert_until'=>($_GET['until']),'divert_to'=>($_GET['to'])),$_GET['id'])) {
    $_SESSION['notification'] = array('type'=>'good','msg'=>'Divert notice added to destination.');
} else {
    $_SESSION['notification'] = array('type'=>'bad','msg'=>'Could not add a divert notice to the destination.');
}
redirect(ROOT_URL.'stores.php?search='.$_REQUEST['search'].$pg.$st.$fl);
}

我已经尝试了一些变体,但只是在原地打转。

最终我需要重试 ('#divert_until_<?php echo $v['id']; ?>').text()

中的日期时间字符串

谢谢!

使用 JavaScript 函数对值进行编码 encodeURI 然后发送。

在您的接收php服务器上使用urldecodephp函数获取原始值。

我的错误,使用的是 .text 而不是 .val

最终代码:

$(document).on('click','#myModal<?php echo $v['id']; ?> .modal-footer a', function(e)
     {
     e.preventDefault();
    //function to update HREf attribute with values

    var until_str = $('#divert_until_' + <?php echo $v['id']; ?>).val();
    var uri = encodeURI(until_str);

    window.location.href=window.location.href= $(this).attr('href') + '&to=' + $('#divert_to_<?php echo $v['id']; ?> option:selected').text() + '&type= ' + $('#divert_type_<?php echo $v['id']; ?> option:selected').text() + '&until=' + uri;

   });