Well, I actually caught a shiny Gastly today (Modest nature and good IVs too, w00t!) but my advice is that if you REALLY want to get a shiny you train your pokemon against wild pokemon, instead of trainers or E4. Aparently also, encountering a shiny pokemon in the Safari Zone seems to be the most common place for trainers to find shinys, only problem is, if they run you will get very pissed off (I swear, that shiny Chansey was all mine, then it just HAD to run X_X). but just do lots and lots of training where wild pokemon lurk, and after a week or two of training there A LOT you should encounter one. In total now, I have a shiny
Claydoll, Aron, Golbat and Gastly(well it's a haunter now) but I only have this much because I trained my pokemon A LOT (well, 18+ level 100s) so yeah just train a lot...