首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何打印datapicker表单的值?

如何打印datapicker表单的值?
EN

Stack Overflow用户
提问于 2018-03-14 01:23:13
回答 1查看 40关注 0票数 0

我正在为自己实现一个小项目。该项目是一个预订网站。

特别是,当用户访问该站点时,它会编译一个表单:

name surname email object check-in date check-out date

两个字段check-incheck-out的类型为datepicker。

当用户选择这两个日期时,我希望网站显示用户可以购买的优惠。

我的问题是两个日期。如何将日期值从JS传递到PHP,以便在我的数据库中进行查询和搜索,这些产品可供用户购买?

下面是我的代码:

JS代码

代码语言:javascript
复制
$(function(){

    var self=this;
     self.check_next=[0,0];
    $('#data_arrivo').datepicker({
        minDate:0,
        dateFormat: "dd/mm/yy",
        onSelect: function (selectedDate) {
                    var depart = jQuery.datepicker.parseDate('dd/mm/yy', selectedDate);
                    depart.setDate(depart.getDate() + 1);
                   $('#data_partenza').datepicker("option", "minDate", depart);
        setTimeout(function(){
            $('#data_partenza').datepicker('show');
        }, 16);
             self.check_next[0]=1;
        if(check_div(self.check_next))load_date_picker();
                }
            });
    
   $('#data_partenza').datepicker({      
        minDate:0,
        dateFormat: "dd/mm/yy",
        onSelect:function(selectedDate){
              self.check_next[1]=1;
        if(check_div(self.check_next))load_date_picker();
            
        }
        });
});
function check_div(ar){
    if(ar[0] && ar[1])return true;
    else return false;
}

function load_date_picker(){
    $('.show_div').removeClass('hidden');
    }

function leggi_dati(){
    var data_arrivo = $('#data_arrivo').val();
    var nome=$('#cnome').val();
    $.ajax({
            type: 'POST',
            url: '/lavoro/wp-content/themes/rolenzo/page-templates/test-page-template.php',
            dataType : "json",
            data:$('#commentForm').serialize(),
            success:function(data){
                console.log("Done");
            }
        });
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/datepicker/0.6.4/datepicker.js"></script>
<link rel='stylesheet' type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/datepicker/0.6.4/datepicker.css"/>

<span style="padding-top: 17px; padding-left:7px; display:block; float:left; width:40%; height:10%;">Selezionare Data di arrivo</span>
             <p><input style="display:block; float:left; width:60%; height:10%;" type="text" name="data_arrivo" id="data_arrivo" class="datepicker" required></p>
         </div>
         <div style="float:left; width:100%; height:100%;">
             <p><span style="padding-top: 17px; padding-left:7px; display:block; float:left; width:40%; height:10%;">Selezionare Data di partenza</span></p>
             <p><input style="display:block; float:left; width:60%; height:10%;" type="text" name="data_partenza" id="data_partenza" class="datepicker" required></p>
         </div>
         <div class="hidden show_div">
         <p style= "text-align:center; font-weight:bold;">Offerte Disponibili nel periodo da Lei selezionato : </p>
             <?php
               $date = urldecode ($_GET['data_arrivo']);

                echo "chosen date is: ".$date;
             
             
             ?>
             </div>

EN

回答 1

Stack Overflow用户

发布于 2018-03-14 01:34:52

您需要以正确的格式在js日期上使用PHP函数createFromFormat,例如:

代码语言:javascript
复制
$jsDate = $_POST['data_arrivo']
$dateTime = DateTime::createFromFormat('d/m/Y', $jsDate);

然后,您应该能够使用$dateTime查询数据库(假设PHP date对象将是兼容的)。

但请记住,这将在所选日期的时间0:00:00创建一个date对象,这可能是您想要的,也可能不是。如果您要包括to日期的全天,则需要将to日期上的时间设置为23:59:59。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49262250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档