Lists' intersection keeping elements' order
This function deletes from the first list all the elements not contained in the intersection, thus returning what you want:

f[l_List]:= DeleteCases[First@l, Except[Alternatives @@ (Intersection @@ l)]]  

f[{{1, 2, 3, 4, 5}, {1, 2, 3, 4}, {2, 3, 4, 5}}]  
-&gt;{2,3,4}

f[{{5, 7, 6, 3}, {5, 6, 1, 3}}]
-&gt;{5,6,3}