请帮帮我..我有以下代码..
//Get the value of Start and End of Week
$('#weeklyDatePicker').on('dp.change', function (e) {
var value = $("#weeklyDatePicker").val();
var firstDate = moment(value, "MM/DD/YYYY").day(0).format("MM/DD/YYYY");
var lastDate = moment(value, "MM/DD/yyyy").day(6).format("MM/DD/YYYY");
$("#weeklyDatePicker").val(firstDate + " - " + lastDate);
});
现在我想将firstDate和lastDate传递给php。我该怎么做以及如何在php中检索传递的值。我对javascripts不太熟悉。希望有人能帮助我。提前谢谢。
这是我的完整代码.. JS标签
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.37/css/bootstrap-datetimepicker.css" rel="stylesheet"
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.11.1/moment.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/bootstrap.datetimepicker/4.17.37/js/bootstrap-datetimepicker.min.js"></script>
HTML
<div class="input-group" id="DateDemo">
<input type='text' id='weeklyDatePicker' placeholder="Select Week" class="form-control" />
<span class="input-group-addon"><i class="glyphicon glyphicon-calendar"></i></span>
JS
$("#weeklyDatePicker").datetimepicker({
calendarWeeks:true,
format: 'MM/DD/YYYY'
});
//Get the value of Start and End of Week
$('#weeklyDatePicker').on('dp.change', function (e) {
var value = $("#weeklyDatePicker").val();
var firstDate = moment(value, "MM/DD/YYYY").day(0).format("MM/DD/YYYY");
var lastDate = moment(value, "MM/DD/yyyy").day(6).format("MM/DD/YYYY");
$("#weeklyDatePicker").val(firstDate + " - " + lastDate);
alert(firstDate);
$.post("SAMPLE1.php",{"fdate" : firstDate ,"ldate" : lastDate});
});
$('#DateDemo').on('dp.change', function (e) {
var kk = $("#weeklyDatePicker").val();
$("#output").html(
" Week Number: " + moment(kk, "MM/DD/YYYY").week() + " of " +
moment(kk, "MM/DD/YYYY").weeksInYear()
);
});
SAMPLE1代码
<?php
echo $_POST["fdate"]; //for firstdate
echo $_POST["ldate"]; //for lastdate
?>
答案 0 :(得分:2)
您可以使用jquery。试试这段代码:
您的JS文件代码:
file copied
你的PHP文件代码(main.php)
$('#weeklyDatePicker').on('dp.change', function (e) {
var value = $("#weeklyDatePicker").val();
var firstDate = moment(value, "MM/DD/YYYY").day(0).format("MM/DD/YYYY");
var lastDate = moment(value, "MM/DD/yyyy").day(6).format("MM/DD/YYYY");
$("#weeklyDatePicker").val(firstDate + " - " + lastDate);
$.post("main.php",{fdate : firstDate ,ldate : lastDate},function(data) {
alert(data);
});
});
确保两个文件都在同一个文件夹中。
答案 1 :(得分:0)
Ajax可能是最简单的。
使用Javascript:
$.get("test.php", { firstDate: firstDate, lastDate: lastDate } );
或
$.post("test.php", { firstDate: firstDate, lastDate: lastDate } );
并在php中
<?php
echo $_REQUEST['firstDate'];
echo $_REQUEST['lastDate'];
?>
答案 2 :(得分:0)
嗨Kath Dee请检查以下代码,我希望使用以下代码解决您的问题。
viewbox
test.php的
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script type="text/javascript">
$('#weeklyDatePicker').on('dp.change', function (e) {
// I am using test value, you can change var value base on id.
var firstDate = '08/02/2016';
var lastDate = '10/02/2016';
//$("#weeklyDatePicker").val(firstDate + " - " + lastDate);
$.post("test.php",{fdate : firstDate ,ldate : lastDate},function(data) {
alert(data);
$("#weeklyDatePicker").val(data);
});
});
</script>
<input type="text" value="" id="weeklyDatePicker" />
我希望这对你有用。
答案 3 :(得分:0)
我会使用$.ajax()
函数,这也可以让你处理错误状态,因为这是处理用户错误和指示脚本出错的指标。 / p>
$.ajax({
url: 'test.php',
type: 'POST',
data: {fdate : firstDate ,ldate : lastDate},
dataType: 'text',
beforeSend: function(){
// initiate some spinner or loading infobox
// to inform the user about the AJAX request
},
success: function(response){
alert(response);
// you may use result like any standard argument
// and call or trigger other functions according to its value
},
error: function(jqXHR, textStatus, errorThrown){
alert(textStatus + ': ' + errorThrown);
// call some error handler or do nothing
},
complete: function(){
// close the spinner or loading box
}
});
在PHP文件中,变量为$_POST['fdate']
和$_POST['lDate']
。完成查询并获得结果后,echo
会出现类似的回复:
echo 'success';
或
echo 'failure';
根据查询结果。您可以使用任何字符串,而不仅仅是成功或失败。只需不要忘记您将在success
功能的$.ajax()
部分中处理,而不是error
部分。error
部分。 dataType: 'text'
部分仅用于请求的任何问题(例如,找不到文件或服务器错误)。
嗯,这是一个棘手的部分:如果您想要返回的唯一内容是状态,您可以在$.ajax()
函数中使用dataType: 'json'
,就像我在此示例中所做的那样。但是,如果要返回包含一些有用数据的对象,例如PHP查询出错或PHP查询已完成的内容,那么最好使用$result = ['statusCode'=>1,'details'=>'Some details according to the query here'];
echo json_encode($result);
并获取JSON响应。在这种情况下,PHP脚本的结尾也会改变。
$.ajax()
response
函数的成功处理程序将获取一个对象作为参数(即alert(response.statusCode); // will alert 1
将是一个对象),您可以这样使用:
UPDATE t
SET t.col1 = o.col1,
t.col2 = o.col2
FROM
other_table o
JOIN
t ON t.id = o.id
WHERE
o.sql = 'cool'