Welcome to the Apple Discussions.
This happens when iPhoto loses the connection between the thumbnail in the iPhoto Window and the file it represents. The most common cause of this is User Activity in the iPhoto Library Folder. Have you altered, moved or renamed anything in the iPhoto Library Folder?
If you haven't, then try rebuilding the database. Hold down the
apple and option (or alt) keys and launch iPhoto. Use the resulting dialogue to rebuild. Choose the top three options.
If that doesn't work, then you may have a corrupted database file. Do you have an up-to-date back up? If so, try copy the library6.iphoto file from the back up to the iPhoto Library Folder allowing it to overwrite the damaged file. If not, then you'll need to create and populate a new library.
To create and populate a new library:
Note this will give you a working library with the same film rolls and pictures as before, however, you will lose your albums, keywords, books, calendars etc.
Move the iPhoto Library Folder to the desktop
Launch iPhoto. It will ask if you wish to create a new Library. Say Yes.
Go into the iPhoto Library Folder on your desktop and find the Originals folder. From the Originals folder drag the individual rolls to the iPhoto Window and it will recreate them in the new library.
When you're sure all is well you can delete the iPhoto Library Folder on your desktop.
In the future, in addition to your usual back up routine, you might like to make a copy of the library6.iPhoto file whenever you have made changes to the library as protection against database corruption.
Regards
TD