【问题标题】:Php add one week to a date onclickphp在onclick上为日期添加一周
【发布时间】:2013-10-03 11:52:27
【问题描述】:

我在这样的元素中打印本周编号。

<span id="week"><?PHP echo date("W"); ?></span>

然后我有一个函数来收集我的 span 的内容并添加一个参数,即我想在今天的一周中添加多少周。

<a href="#" onclick="show_week(1)">Next week</a>

javascript 函数 show_week() 如下所示

function show_week(x){
   var d =document.getElementById("week").innerHTML;
   //alert(d.innerHTML);
  if (window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
    } else {// code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }

    xmlhttp.onreadystatechange=function() {
    if (xmlhttp.readyState==4 && xmlhttp.status==200) {
    }
  }

xmlhttp.open("GET","show_week.php?w="+x+'&d='+d,true);
xmlhttp.send();
}

在这个函数中,我将内容从 my 保存到变量 d 中,在这种情况下是本周编号 (40)

然后我像这样用 show_week.php 传递这个变量

xmlhttp.open("GET","show_week.php?w="+x+'&d='+d,true);

并将新的周数打印到 id="week" 的跨度中。

我无法让它正常工作。

如何在 span id="week" 中的 weekdate 中添加一周?

【问题讨论】:

  • 你的星期日期是什么样的? var_dump($_GET['w']); 输出什么?
  • $_GET['w'] 输出我想要提前多少周。 1 代表提前一周,2 代表提前一周,以此类推。 $_GET['d'] 输出 span id="week" 的内容

标签: php ajax date onclick


【解决方案1】:

假设你的 php 脚本传回了一个好的日期并且格式正确,你还没有阅读 GET 请求的回复,所以试试这个:

xmlhttp.onreadystatechange=function() {
    if (xmlhttp.readyState==4 && xmlhttp.status==200) {
        document.getElementById("week").innerHTML = xmlhttp.responseText;
    }

【讨论】:

  • 我得到了正确的日期。如果我将日期格式化为 2013-10-04 并添加一天、一个月或一年,那么一切正常。但我想添加 plus1 周或 minus1 周。这是我有问题。有什么想法吗?
  • @user1435012 这可能会回答你的问题stackoverflow.com/questions/11988428/…
  • 谢谢。这帮助了我一点。但下次我点击下周并收集周数。服务器不明白 41 是周数。所以在 52 之后它显示 53 和 54 等等,而不是从明年的第一周开始......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-11-12
  • 2012-04-13
  • 1970-01-01
  • 2013-02-18
  • 1970-01-01
  • 1970-01-01
  • 2021-11-01
相关资源
最近更新 更多