$start_date = date('Y-m-d', strtotime(str_replace('/', '-', $query->row('startdate'))));
Nebo ještě lépe – stačí změnit data v databázi:
UPDATE `table` SET `startdate` = REPLACE(`startdate`, '/', '-');
... a poté pole převeďte na typ DATE.
---- UPRAVIT ----
Plukovník Shrapnel má pravdu... Přehlédl jsem skutečnost, že je také potřeba změnit datum, takže je to RRRR-MM-DD; za předpokladu, že původní datum je ve formátu DD/MM/RRRR, lepší dotaz by mohl být něco jako:
UPDATE `table` SET `date` = CONCAT(SUBSTRING(`date`, 7), '-', SUBSTRING(`date`, 4, 2), '-', SUBSTRING(`date`, 1, 2))
Což obrátí součásti na řetězec, který lze převést na DATE ... nebude to úplně fungovat, pokud původní řetězec data nepoužívá úvodní nuly 1/6/2011
například... v tom případě by bylo potřeba udělat něco trochu chytřejšího.