2015-02-23 40 views
0

表名 - receipt_entryPHP PDO代碼從表中選擇日期,並添加+1個月在選定日期

列名 - STARTINGDATE

我需要從receipt_entry表STARTINGDATE並在選定的日期添加+ 1個月並在另一個日期文本框中顯示。

對於EX -

STARTINGDATE = 23-02-2015 然後在日期顯示文本框23-03-2015。

此功能適用於改變列表框的選擇事件......

每一件事情是在我的代碼工作,除了在此日期textbox..not得到適當的日期....在我的文本框此顯示錯誤的日期。 。

**Index.php page** 

    <!--AUTO POPULATE TEXTBOX ON COMBOBOX CHANGED EVENT START --> 
     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js" type="text/javascript"></script> 
    <script> 
    function showUser(str) 
    { 
    if (str=="") 
    { 
     document.getElementByName("cityname").value=""; 
     return; 
    } 
    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) 
     { 
      var data = JSON.parse(xmlhttp.responseText); 
      for(var i=0;i<data.length;i++) 
      {    
       document.getElementById("generateddate").value = data[i].date; 
      } 
     } 
    } 
    xmlhttp.open("GET","coupondata.php?q="+str,true); 
    xmlhttp.send(); 
    } 
    </script> 
    <!--AUTO POPULATE TEXTBOX ON COMBOBOX CHANGED EVENT ENDS --> 


    <select class="special-flexselect" name="coupon" tabindex="1" onChange="showUser(this.value)">     
          <option value="" ></option>       
          <?php foreach ($loadcoupon as $coup){ ?> 
           <option value="<?php echo $coup["coupon"]; ?>"><?php echo $coup["coupon"]; ?></option> 
          <?php }?> 
          </select> 

<input type="text" name="generateddate" id="generateddate" value="" class="field size4" /> 

coupondata.php頁

<?php 
    require_once('includes/config.php'); 
    $q = $_GET['q']; 
    $city = $database->getRows("SELECT * FROM receipt_entry WHERE coupon = :coupon", array(':coupon'=>"$q")); 
    $info = array(); 
    foreach($city as $row) 
    {  
     $startingdate = $row['startingdate']; 
     $generateddate = date("d-m-Y", strtotime($startingdate . " +" . " MONTHS"));  
     //$generateddate = date("d-m-Y", strtotime($startingdate) . " + MONTHS"); 

     $cWeb[] = $row['customer_name']; 
     $receipt = $row['receipt_no']; 
     $book = $row['book_no']; 
     $booking = $row['bookingdate'];  
     $info[] = array('web' => $cWeb,'rec' =>$receipt,'book' =>$book,'booking' =>$booking,'date' =>$generateddate); 
    } 
    echo json_encode($info); 
    ?> 

回答

1

你需要告訴多少個月你會升IKE增加,PHP不知道,在默認情況下

$generateddate = date("d-m-Y", strtotime($startingdate . " + 1 MONTHS"));  
0
$generateddate = date("d-m-Y", strtotime("$startingdate + 1 MONTH")); 
+0

不是隻發佈代碼,而是包含對代碼的作用以及如何解決用戶問題的描述。這樣做有助於阻止您的答案被系統標記爲低質量,就像這個系統一樣。 – Styphon 2015-02-23 21:47:06

-1

需要添加月數...你要多少個月的補充。

<?php 
    require_once('includes/config.php'); 
    $q = $_GET['q']; 
    $city = $database->getRows("SELECT * FROM receipt_entry WHERE coupon = :coupon", array(':coupon'=>"$q")); 
    $info = array(); 
    foreach($city as $row) 
    {  
     $startingdate = $row['startingdate']; 
     $generateddate = date("d-m-Y", strtotime($startingdate . " +" . " 1MONTHS")); 
     //$generateddate = date("d-m-Y", strtotime($startingdate) . " + MONTHS"); 

     $cWeb[] = $row['customer_name']; 
     $receipt = $row['receipt_no']; 
     $book = $row['book_no']; 
     $booking = $row['bookingdate'];  
     $info[] = array('web' => $cWeb,'rec' =>$receipt,'book' =>$book,'booking' =>$booking,'date' =>$generateddate); 
    } 
    echo json_encode($info); 
    ?> 
+1

不只是盲目地複製/粘貼所有的代碼,而沒有指出你改變了什麼。即使如此,你仍然有一個錯字:「1MONTHS」不起作用。 – 2015-02-23 16:41:05

相關問題