0

Hello, I have a problem in my codes. Obviously, I'm beginning to program in PHP and know nothing about its advanced concepts. So I'm asking of your help. I'd like to add 2 months to the end date the user input. I tried this code below:

public function inputEndDate() {
    $value = $this->endDate;
    $html = "";
    $html .= '<label for="enddate">End Date:</label>' . PHP_EOL;
    $html .= '<input type="text" readonly name="enddate" id="enddate" value="'.$value.'">';
    $html .= '<input type="button" id="enddatebutton" onclick="getEndDate()">' . PHP_EOL;
    return $html;
}


public function inputExpiryDate() {
    $value = $this->endDate;
    $date = date('Y/m/d', strtotime("$value +2 month"));
    $html = "";
    $html .= '<label for="expirydate">Expiry Date:</label>';
    $html .= '<input type="text" readonly name="expirydate" id="expirydate" value="'.$date.'">';
    $html .= '<input type="button" id="expirydatebutton" onclick="getExpiryDate()">' . PHP_EOL;
    return $html;
}

But when I run the program, it's not displaying the correct value; however it's displaying the added two months of its start date.

2
Contributors
2
Replies
4
Views
4 Years
Discussion Span
Last Post by bettybarnes
0

When I test your code like

<?php

class DateTest {

 public function inputEndDate() {
    $value = date('Y/m/d');
    $html = "";
    $html .= '<label for="enddate">End Date:</label>' . PHP_EOL;
    $html .= '<input type="text" readonly name="enddate" id="enddate" value="'.$value.'">';
    $html .= '<input type="button" id="enddatebutton" onclick="getEndDate()">' . PHP_EOL;
    return $html;
}


public function inputExpiryDate() {
    $value = date('Y/m/d');
    $date = date('Y/m/d', strtotime("$value +6 month"));
    $html = "";
    $html .= '<label for="expirydate">Expiry Date:</label>';
    $html .= '<input type="text" readonly name="expirydate" id="expirydate" value="'.$date.'">';
    $html .= '<input type="button" id="expirydatebutton" onclick="getExpiryDate()">' . PHP_EOL;
    return $html;
}

}

$dateClass = new DateTest();
echo $dateClass->inputEndDate();
echo $dateClass->inputExpiryDate();
?>

It works fine..

You check the value of

 $value = $this->endDate;
0

The value of endDate is upon the filling of it by the user. It's still empty when you first view the page.

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.