Arduino UNO and ADXL345 getting 0 0 0 OR -1 -1 -1 outputs with SPI communication
Does it start out OK, but degrade over time? Or did it work once, but now fails every time?
A ggogle search found this pdf, with handling considerations on the first page:
1. Not reverse polarity protected
2. Dropping on a hard surface can exceed Acceleration limits. 
The main other options for breaking the sensor would be: static damage, or the Arduino IO exceeding 3.3V. The Data sheet here lists a voltage limit of 3.9V (page 6).
According to the UNO web page, the "official" output levels are 5V...
Does the R3 version have logic level translation? Did you use some form of voltage divider? Have you got a modified board, like discussed here?