date() tries to calculate the wanted parameters from the second function argument, where it expects a timestamp, which is of type INT.
But the variable $row_getAds['startDate']; is a formatted string. This means its value is "2003-08-01" and that´s not an an integer. So date() doesnt know how to handle this and sets the value of its timestamp to 0 (or perhaps -1, i am not sure).
Try :
echo date("m/d/Y", "Watch me, I am a string");
This will show the same date : 12/31/1969
And why is the result : 12/31/1969 ?
From the Manual:
"The timestamp is a long integer containing the number of seconds between the Unix Epoch (January 1 1970) and the time specified"
Try :
echo date("H.i.s - m/d/Y", 0);
"H.i.s" means Hours, minutes, seconds, the result shows the "beginning of time" for your pc
echo date("H.i.s - m/d/Y", 3600);
now it´s one hour later (60 mins * 60 Secs = 3600)
echo date("H.i.s - m/d/Y", 86400);
the next day (60 mins 60 Secs = 3600 24 = 86400)
echo date("H.i.s - m/d/Y", 31536000);
and one year is gone (60 mins 60 Secs = 3600 24 * 365 = 31536000)
Greetings, Lirpa