I know the Resurrection spell brings something back to life, but what happens when casting it on a zombie? A zombie is already dead, but now undead—does it "die" and is brought back to life, or does nothing happen?
If the zombie is still 'alive', then Resurrection does nothing.
From the spell description:
If you 'kill' the zombie, then you can resurrect the corpse. Also from the spell description
If a human is killed, raised as a zombie, the zombie is destroyed and then the remaining corpse ressurected, you have a human again.
Getting to -10 HP turns a person into a corpse.
Going to 0 hp turns an undead into a corpse.
Resurrection turns a corpse into a human.
Animate dead turns a corpse into a zombie.
Nothing I know of turns a human into a zombie, or a zombie into a human without them spending some time as a corpse. Someone will no doubt point out some way with some nonsense from Libris Mortis.
The Rules Are Contradictory
(emphasis mine), but the spells inherit the entry Target: Dead creature touched from the 5th-level Clr spell raise dead [conj] (PH 268), which means that when the Monster Manual describes the type undead, saying that
it's saying an undead creature can be the target of spells that the spells say can't target an undead creature.
The Player's Handbook is the final authority on spells, but the Monster Manual is the final authority on creatures. Thus it's best if the DM decides whether this is a spell issue or a creature issue and makes a house rule to resolve this contradiction accordingly.
This rules quirk remains even in the updated 2013 printings of the Player's Handbook and Monster Manual.
They wouldn't come back.
A zombie is a creature, it is not 'a corpse' which is the specified target for Resurrection. True Resurrection would arguably work, since it doesn't require a corpse. In that case, what happened to the Zombie would be up to the GM. It might conceivably continue to exist, as the True Resurrection spell creates a new body for the soul.
That said, if you have the zombie, just kill it. Then it is a corpse again, and a target for Resurrection.
If the zombie used to be a resurrectable creature in life, it is resurrected as that creature.
The relevant quote from the description of the undead type is:
The resurrection spell does not directly contradict this. What it does say is:
The first part tells you the original creature can be resurrected if they were turned into an undead and destroyed, unlike with raise dead. The latter tells you you can't re-reanimate destroyed undead.
You could interpret it as saying you can't cast resurrection on undead, but then it would also be saying you can't cast it on "living" constructs, elementals or outsiders. That clearly isn't the purpose (target is a dead creature touched); instead, it's saying those creatures, once destroyed/killed cannot be returned back to "life".
So an undead cannot be resurrected as an undead, but can be resurrected as the original creature (where available) whether it is first destroyed (the spell description) or not (the type description).
In practice, with 10 minute casting time, you are not going to be using it on a zombie that you couldn't just as easily first destroy, so it's moot anyway.