Per la data puoi usare checkdate.

if (checkdate($mese, $giorno, $anno))
echo "Data Valida";
else
echo "Data nn valida";

Per il CAP non saprei. Ti serve verificare che abbia solo il numero esatto di cifre o che sia realmente esistente?

if (!preg_match("/^[0-9]{5}$/",$cap))
echo "non valido";

Per verificare che siano solo numeri ed esattamente 5 questo dovrebbe andar bene.