-3

How to find the Birthday of FRIENDS Who are celebrating today using PHP and MYSQL

thanks in Advance...

Fero

Fero
  • 12,969
  • 46
  • 116
  • 157

4 Answers4

8

This one handles February 29 - treating March 1st as the celebration day in non-leap years.

SELECT u.name
FROM users u INNER JOIN friendships f ON (f.user_id = u.id)
WHERE f.friend_id = 6 -- whatever your id is
    AND (
        MONTH(u.birthdate) = MONTH(NOW())
        AND DAY(u.birthdate) = DAY(NOW())
    ) OR (
        MONTH(c.birthdate) = 2 AND DAY(c.birthdate) = 29
        AND MONTH(NOW()) = 3 AND DAY(NOW()) = 1
        AND (YEAR(NOW()) % 4 = 0)
        AND ((YEAR(NOW()) % 100 != 0) OR (YEAR(NOW()) % 400 = 0))
    )

Having not see your table structure, I just made a guess about how you handle friendship links

nickf
  • 537,072
  • 198
  • 649
  • 721
  • +1 for bothering with the 1:1461 people who were born on a leap day (approx). They might prefer to celebrate on the last day of February, of course :D But, like they say, you can't please all of the people all of the time. – Jonathan Leffler Sep 29 '09 at 04:45
0

You can integrate cURL calls to http://www.birthdatabase.com within your application and read in the HTML results.

Edit - I may have misunderstood your question. If you're trying to pull birthdays from another database (not your own), this could be your solution.

James Skidmore
  • 49,340
  • 32
  • 108
  • 136
0

Make separate fields for month and day to make selects faster.

Kane
  • 1,420
  • 2
  • 8
  • 5
-3

Thanks all

I got the answer...

SELECT * FROM `users` WHERE MONTH(`birthdate`) = MONTH(NOW()) AND
     DAYOFMONTH(`birthdate`) = DAYOFMONTH(NOW());

By using this query we can able to get the Data we want

Fero

Jonathan Leffler
  • 730,956
  • 141
  • 904
  • 1,278
Fero
  • 12,969
  • 46
  • 116
  • 157