1. Open up your photo in Photoshop. Then go to File >> New. Create this new document a little bigger (about 20px around) than your photos size and click OK.
Now simply click and drag from your Photo into your new document and position it in the center. So you should now have your photo with a white gap around it.
2. Using the Rectangular Marquee tool select the entire area of your photo from the top left corner to the bottom right corner. Then create a new layer by going to Layer >> New layer and call it "frame". Using the fill tool fill this in with #E1E1E1 (light gray). You should now be able to see a light gray box in the middle of your page covering your image..
3. Now click on Select >> Modify >> Contract and type in 25px. Click OK. Now press delete on your keyboard. Your photo should then reappear beneath.
4. Right click on your frame layer and go to Blending Options. On the left select Stroke and use the following settings.
5. Click OK. You should then have something like this.
6. Now single left click on your frame layer. Then hold down Ctrl on your keyboard and single left click on your photos layer. Then press Ctrl + E. This will merge the two layers together.
7. Now go to Edit >> Transform >> Scale. Simply resize the height of your image and make it slightly smaller.
8. Go to Edit >> Transform >> Pesrepactive and drag one of the top points (either top left or top right corners) into the middle slightly. You should end up like this.
9. Now hold down the Alt key on your keyboard and press up 5 times. This will create the 3D effect by duplicating the layer and moving it up one pixel.
10. On the bottom frame layer right click on it and go to Blending Options. On the left select Drop Shadow and then use the following settings.
11. Click OK. And thats it. That last step simply added a shadow to the bottom layer to make it look more realistic. Here is my final result.