haber lo veo complicado, no creo puedas hacer bien el ordanamiento si no ingresas una fecha tipo date como deberia ser, mira si solo quieres mostrar el dia y mes, es independiente que guardes el año tambien te recomiendo.....
 
en tu form tienes dos campos dia - mes para dia por ejemplo enviamos 03 y mes 11 ok. hasta aki como lo tienes supongo....
luego tu juntas estas variables tipo ....  
 Código PHP:
    $fecha = "$_POST[dia]/$_POST[mes]"; 
/*cierto y guardas
INSERT INTO tabla ....fecha Values '$fecha') por decir */ 
    
  bueno yo te recomiendo pasar el campo varchar que tienes a date.. tipo año-mes-dia
entonces harias algo como esto al guardar...  
 Código PHP:
    $anyo = date("Y");
$fecha = "$anyo-$_POST[mes]-$_POST[dia]"; 
    
  y guardas $fecha en el campo date ok... 
te quedaria guardado el año mes y dia, obiamente el formato es solo para ordenar tu solo quieres el dia y el año...
ahora teniendo este formato en base de datos es imple ordenar como te lo propuse arriba.... 
y si solo quieres mostrar el dia y año de cada fecha haces   
 Código PHP:
    $sql = mysql_query("SELECT * FROM tabla ORDER BY fecha DESC"); //descendente
//ASC es ascendente, te veras como ordenas...
//y luego si quieres mostrar dia y mes ocupamos substr por ejemplo para cortar
while ($datos = mysql_fetch_array($sql))
{
$dia = substr($datos[fecha], 8, 2)
$mes = substr($datos[fecha], 5, 2)
echo "$dia/$mes";
} 
    
  
espero se entienda seria una forma correcta de trabajar las cosas
espero te sirva saludos