<?php 
header("Content-type: text/html; charset=utf-8");
echo $PHP_SELF;
if(!$year)$year=date( "Y "); 
if(!$month)$month=date( "m "); 
if(!$today)$today=date( "d "); 
$day=$today+$Days; 
$tmpUnixStamp=mktime(0,0,0,$month,$day,$year); 
$tmpWeek=date( "w ",$tmpUnixStamp); 
$monUnixStamp=$tmpUnixStamp-$tmpWeek*86400; 
$weekArr=array( "周日 ", "周一 ", "周二 ", "周三 ", "周四 ", "周五 ", "周六 "); 
for($n=0;$n <7;$n++){ 
$rel.= $weekArr[$n]. ": ".date( "Y/m/d ",$monUnixStamp+$n*86400). " <BR> "; 

echo   str_replace( "- ", "/ ",$rel); 
echo $_POST['day'];
?> 
<html> 
<head> 
<title> </title> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head> 
<body> 
<form method="post" action="zhou_rili.php" >
<input type="hidden" value="<?php echo $monUnixStamp;?>" name="day">
<input   type=button   value= "上一周 "   onclick= "self.location= ' <?php echo $PHP_SELF ?> ?type=minus&year= <?php echo $year?> &month= <?php echo $month?> &Days= <?php echo $Days-7?> &today= <?php echo $today?> ' "> 
<input   type=button   value= "下一周 "   onclick= "self.location= ' <?php echo $PHP_SELF?> ?type=plus&year= <?php echo $year?> &month= <?php echo $month?> &Days= <?php echo $Days+7?> &today= <?php echo $today?> ' "> 
</form>
</body> 
</html>
点击  下一周 和上一周的时候  没有启到作用   

解决方案 »

  1.   

    要这样写header("Content-type: text/html; charset=gbk");
    extract($_GET);
    //echo $PHP_SELF;
    if(!$year)$year=date( "Y "); 
    if(!$month)$month=date( "m "); 
    if(!$today)$today=date( "d "); 
    $day=$today+$Days; 
    $tmpUnixStamp=mktime(0,0,0,$month,$day,$year); 
    $tmpWeek=date( "w ",$tmpUnixStamp); 
    $monUnixStamp=$tmpUnixStamp-$tmpWeek*86400; 
    $weekArr=array( "周日 ", "周一 ", "周二 ", "周三 ", "周四 ", "周五 ", "周六 "); 
    for($n=0;$n <7;$n++){ 
    $rel.= $weekArr[$n]. ": ".date( "Y/m/d ",$monUnixStamp+$n*86400). " <BR> "; 

    echo   str_replace( "- ", "/ ",$rel); 
    echo $_POST['day'];
    ?> 
    <html> 
    <head> 
    <title> </title> 
    <meta http-equiv="Content-Type" content="text/html; charset=gbk"></head> 
    <body> 
    <form method="post" action="zhou_rili.php" >
    <input type="hidden" value="<?php echo $monUnixStamp;?>" name="day">
    <input   type=button   value= "上一周 "   onclick= "self.location= ' <?php echo $_SERVER['PHP_SELF'] ?>?type=minus&year= <?php echo $year?> &month= <?php echo $month?> &Days= <?php echo $Days-7?> &today= <?php echo $today?> ' "> 
    <input   type=button   value= "下一周 "   onclick= "self.location= ' <?php echo $_SERVER['PHP_SELF']?>?type=plus&year= <?php echo $year?> &month= <?php echo $month?> &Days= <?php echo $Days+7?> &today= <?php echo $today?> ' "> 
    </form>
    </body> 
    </html>
      

  2.   

    你按我说的改了吗?
    <?php echo $_SERVER['PHP_SELF'] ?>?type
      

  3.   

    extract($_GET);  为啥要把它写到上面
      

  4.   


    <?php
    //header("Content-type: text/html; charset=utf-8");
    if(!isset($PHP_SELF))$PHP_SELF = $_SERVER['PHP_SELF'];
    if(!isset($year))$year=date("Y"); 
    if(!isset($month))$month=date("m"); 
    if(!isset($today))$today=date("d"); 
    if(!isset($_GET['Days']))$Days=0;
    else $Days = $_GET['Days'];
    $day=$today+$Days; 
    $tmpUnixStamp=mktime(0,0,0,$month,$day,$year); 
    $tmpWeek=date( "w ",$tmpUnixStamp); 
    $monUnixStamp=$tmpUnixStamp-$tmpWeek*86400; 
    $weekArr=array( "周日 ", "周一 ", "周二 ", "周三 ", "周四 ", "周五 ", "周六 "); 
    $rel = '';
    for($n=0;$n <7;$n++){ 
    $rel.= $weekArr[$n]. ": ".date( "Y/m/d ",$monUnixStamp+$n*86400). " <BR> "; 

    echo   str_replace( "- ", "/ ",$rel); 
    //echo $_POST['day'];
    ?> 
    <html> 
    <head> 
    <title> </title> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head> 
    <body> 
    <form method="post" action="zhou_rili.php" >
    <input type="hidden" value="<?php echo $monUnixStamp;?>" name="day">
    <input   type=button   value= "上一周 "   onclick= "self.location= '<?php echo $PHP_SELF ?>?type=minus&year= <?php echo $year?> &month= <?php echo $month?> &Days= <?php echo $Days-7?> &today= <?php echo $today?> ' "> 
    <input   type=button   value= "下一周 "   onclick= "self.location= '<?php echo $PHP_SELF?>?type=plus&year= <?php echo $year?> &month= <?php echo $month?> &Days= <?php echo $Days+7?> &today= <?php echo $today?> ' "> 
    </form>
    </body> 
    </html>
      

  5.   

    extract是将数组里面的键值对分成已键为名已值为值的变量,如array('a' =>1)那么如果用extract的话就是$a=1了,而你有的变量虽然通过$_GET提交了,但是你却没有去获取它,所以你也可以用extract分解$_GET或用$_GET获取
      

  6.   

    大哥们  用GET  提交 在UL 上面会出现很多   
    我想用POST 提交  要怎么做呢??
      

  7.   

    没必要,再说了你本身给出的方式就是GET方式的
      

  8.   

    因为你的代码的写法需要打开 register_globals 开关,默认是关闭的。况且 php5.3 已把 register_globals 开关纳入废止之列,以后也不会再提供了所以需要 extract($_GET);
    将数组元素导入到变量表,否则代码没修改量太大
      

  9.   

    我每次点击   下一周的时候  url就会 往后延长
      

  10.   

    那是你用PHP_SELF的代价,你应该每次初始化url
      

  11.   

    我的变的老长
    http://localhost/google/untitled.php?type=plus&year=                            2011                             &month=                            08                             &Days= 196 &today=                            09
    变成这个了