phpretard Posted March 29, 2009 Share Posted March 29, 2009 Why doesn't this work? $LicenseMM="01"; $LicenseDD="29"; $LicenseYY="2010"; $CurrentDay=date(d); $CurrentMonth=date(m); $CurrentYear=date(Y); if ($LicenseMM < $CurrentMonth || $LicenseDD < $CurrentDay && $LicenseYY == $CurrentYear){ echo"Your License Has Expired"; } // I HAVE TRIED THIS WAY TOO (extra parenthasize) if (($LicenseMM < $CurrentMonth || $LicenseDD < $CurrentDay) && ($LicenseYY == $CurrentYear)){ echo"Your License Has Expired"; } Thanks again. Quote Link to comment Share on other sites More sharing options...
PFMaBiSmAd Posted March 29, 2009 Share Posted March 29, 2009 Because logic is evaluated left to right and your conditional test is true if the month is less, so it never checks the day or year. You must test most signification part (year) to least significant part (day) and you can just directly compare yyyy-mm-dd formats because the parts of that format are ordered most significant to least significant - $License="2010-01-29"; $Current = date('Y-m-d'); if($License < $Current){ echo"Your License Has Expired"; } Quote Link to comment Share on other sites More sharing options...
phpretard Posted March 29, 2009 Author Share Posted March 29, 2009 Thanks!!!!!!!!!!!! You just eliminated like 25 line of code for me. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.