El problema es que estas sobreescribiendo las variables y por ende su valor siempre sera el ultimo..
La solucion es asignar una variable con el titulo y una variable con el url del foto a cada clip... algo asi...
Código:
for (var info in rows) {
clip = this.p.duplicateMovieClip("p"+x, x+10);
clip.tit = rows[x].titulo;
clip.picture = rows[x].foto;
clip.onPress = function() {
_root.titulo = this.tit;
loadMovie(this.picture, "_root.foto");
};
clip._y = basey;
basey += 30;
x = x+1;
}