What have you done in the way of testing? Functions like imagecopyresized and imagejpg return a boolean success value. You should be testing these returns, and on failure echoing the values of the params passed in. That might give you clues as to why it isn't working. Perform these tests and tell us what you find.