If you originally got it from an iLife DVD or with a computer that shipped with Mac OS X 10.6.8 or earlier, reinstall it from DVD.
If you got it with a computer which originally shipped with 10.7 or newer, log into the Mac App Store with the Apple ID you registered it with, click on the Purchases tab, choose Accept, and redownload it from there, which is free.
If you bought it from the Mac App Store, log into it with the Apple ID used to buy it and then see above.
Before reinstalling the application try this: launch iPhoto with the Option key held down and try to create a new, test library. If you can then the problem lies with the library. In which case Apply the two fixes below in order as needed:
Launch iPhoto with the Command+Option keys held down and rebuild the library.
Since only one option can be run at a time start with Option #3, followed by #4 and then #1 as needed.
Using iPhoto Library Manager to Rebuild Your iPhoto Library
1 - download iPhoto Library Manager and launch.
2 - click on the Add Library button, navigate to your Home/Pictures folder and select your iPhoto Library folder.
3 - Now that the library is listed in the left hand pane of iPLM, click on your library and go to the File ➙ Rebuild Library menu option.
4 - In the next window name the new library and select the location you want it to be placed.
5 - Click on the Create button.
Note: This creates a new library based on the LIbraryData.xml file in the library and will recover Events, Albums, keywords, titles and comments. However, books, calendars, cards and slideshows will be lost. The original library will be left untouched for further attempts at fixing the problem or in case the rebuilt library is not satisfactory.