|
Posted by Oli Filth on 05/27/05 02:53
Lee David said the following on 27/05/2005 00:19:
> I posted this in another newsgroup, but no one knew the answer so I thought
> I'd try it here.
>
> Here is what comes before the <html>:
>
> <?php
> $lasthere = $_COOKIE[lasthere];
>
> if (isset($lasthere))
> {
> // process existing cookie
> $user = $_COOKIE[user];
>
> // hour, minute, second, month, day, year
> $lastupdate = mktime(16, 16, 16, 3, 26, 2005);
>
> if ($lasthere < $lastupdate)
> {
> // updated stuff
> $listnewstuff = "yes";
> }
> else
> {
> // old stuff
> $listnewstuff = "no";
> }
> }
> else
> {
> // get user name
> $listnewstuff = "no cookie";
> }
>
> // in any case write a cookie out with the current date
> setcookie("lasthere", time(), time() + 36000);
> setcookie("user", "Kevin", time() + 36000);
> ?>
>
> and I check the varibles with this:
>
> <?php
> echo "<br>lastupdate: " . date("M d, Y H:I:s", $lastupdate);
> echo "<br>lasthere: " . date("M d, Y H:I:s", $lasthere);
> echo '<br>now: ' . date("M d, Y H:I", time());
> echo '<br>LNS: ' . $listnewstuff . '<br>';
>
> if ($listnewstuff == "yes")
> {
> echo "new stuff to be found<br>";
> }
> else
> {
> echo "no new stuff to be found<br>";
> }
> ?>
>
> The output is this:
> lastupdate: Mar 26, 2005 16:0:16
> lasthere: May 26, 2005 14:1:36
> now: May 26, 2005 14:1
> LNS: no
> no new stuff to be found
>
> I hit it a few seconds later and got this:
> lastupdate: Mar 26, 2005 16:0:16
> lasthere: May 26, 2005 14:1:15
> now: May 26, 2005 14:1
> LNS: no
> no new stuff to be found
>
> the seconds change, but the minutes is still one character and doesn't
> change.
>
You might want to check the manual for date() (http://www.php.net/date).
P.S. The stuff at the top of your script is incorrect. You need to quote
the array keys, i.e. $_COOKIE["lasthere"], etc.
Also, you want to do the isset() on $_COOKIE["lasthere"], not on $lasthere.
--
Oli
[Back to original message]
|