There is a glitch in D/P where you can make your trade evo. Pokemon evolve without trading it.
1. Go to the GTS
2. Deposit a Pokemon for trade into the GTS
3. Trade for a Pokemon
4. Bring your Pokemon out of the GTS
5. It evolves when you bring it back
The game thinks that you are getting it out of a trade so it evolves it.
P.S. Only works with the following Pokemon
Kadabra
Machoke
Graveler
Also any other Pokemon that evolves by trade
It also works with Porygon and Porygon 2 if you give them the item they need to be holding.