Re: Help with comparing date stamp in PHP to date AND time stampcoming from MYSQL db!!!!!!
On 8 May, 09:14, Captain Paralytic <paul_laut...@yahoo.com> wrote:
> On 8 May, 05:21, oed...@gmail.com wrote:
>
>
>
> > Hi all-
>
> > I've searched for at least an hour tonight before posting this
> > question into here. It's one of those questions that seemed simple AT
> > FIRST, but I'm having a hard time filtering the info I get on all the
> > date formats and how to compare them for my little script.
>
> > This script is to disallow a user into an area who has been banned for
> > a certain amount of time. So when the user logs in again, we compare
> > the current date to the one the admin put into MYSQL and come up with
> > an answer (that it is the date they are allowed back in or not).
> > Also, I have no control over how the data is inserted on my part,
> > since another company is doing it. So I can't change the date format
> > on that end.
>
> > Here is the code I'm working with so far:
>
> > $username = $_GET["username"];
> > //declare all the db stuff, etc above this line
> > $q = "SELECT * FROM banned WHERE username = '$username'";
> > $db->query($q);
> > $db->next_record();
>
> > $banned_user = $db->f("username");
> > $banned_until = $db->f("banned_until");
>
> > if ($db->num_rows() > 0) {
>
> > //$date1 = date("Y-m-d",$banned_until); this returns a datestamp
> > of 1969-12-31 instead of 2008-05-05 so instead I'm back to the line
> > below which just pulls the banned_until date AND timestamp from the
> > db.
>
> > $date1 = $banned_until;
>
> > $date2 = date('Y-m-d'); //this gives me exactly what I want. I
> > just want the banned_until to match the format
>
> > echo "$date1 compare to $date2";
>
> > //this returns a date string that currently looks like: 2008-05-05
> > 18:11:19 compare to 2008-05-08. I can't compare this currently.
>
> > //Solution??? I want to remove the timestamp and just work with
> > comparing the date in Y-m-d format to see if they are equal or not.
>
> > } else {
>
> > echo $banned_until; //simply displays the banned_until stamp which
> > is 2008-05-05 18:11:19
>
> > }
>
> > So how do I normalize the two date stamps and then compare them
> > properly to allow a user back in?
>
> > Many thanks for ANY help on this!!!!!!!!
>
> > -Oedipa Maas
>
> This is so simple:
>
> $q = "SELECT username, DATE_FORMAT(banned_until,'%Y-%m-%d') FROM
> banned WHERE username = '$username'";
Oops missed a bit:
$q = "SELECT username, DATE_FORMAT(banned_until,'%Y-%m-%d')
banned_until FROM banned WHERE username = '$username'";
|