scusa se insisto, ma stai facendo un giro del fumo assurdo:
codice:
/*Prendo la data dal sistema
$data = date("y-m-d");
/*Prendo la data dal db
$date = $a['event_start_date'];
/*Scompongo la data del sistema
$gg=substr($date,8,7);
$mm=substr($date,5,-3);
$aa=substr($date,0,-6);
/*Scompongo la data del db
$giorno=substr($data,6);
$mese=substr($data,3,2);
$anno=substr($data,0,-6);
//metto la data del sistema nella seguente forma aaaa-mm-gg
$DataEvento="$aa-$mm-$gg";
intanto fai un mixer tra la variabile del sistema e quella del db ($data = data sistema - $date = data del db e non viceversa) quando poi sarebbe sufficiente usare CURDATE() nella query.
CURDATE() e' uguale a DATE('Y-m-d') ---> Y maiuscolo rende anno 2010
La query e' poi assolutamente assurda:
codice:
$controllo="SELECT DISTINCT('".$DataConfronto."')
FROM wp_dbem_events
WHERE '".$DataEvento."' >= '".$DataConfronto."'
LIMIT 10 ";
selezioni la stringa $DataConfronto a condizione che $DataEvento sia >= a $DataConfronto.
Significa che la tabella wp_dbem_events non viene interessata ne punto ne poco dalla query.
Ripeto la proposta della query che ti ho suggerito prima aggiungendo di eliminare tutto quel paciamme di codice che hai postato.