In general any point on the surface of the cylinder (radius not being relevant here) can be uniquely identified by two numbers: the distance along the axis of the cylinder and the angle around the cylinder. Those coordinates will range from 0 to the length of the cylinder, and 0 to 2*pi in angle. If you scale them both by dividing by the relevant range you will get two coordinates running from 0 to 1. Those could be used as your texture coordinates to sample the image. You will need to make a choice of which end of the cylinder is the "bottom" (i.e. the end at u=0) and what angle should be the "seam" (i.e. at v=0 and v=2*pi). Notice that the angle coordinates will repeat at this seam, so your texture will have to repeat in the corresponding direction so as not to display a visible discontinuity.
For more info, see e.g. http://en.wikipedia.org/wiki/Cylindrical_coordinate_system
Hope that helps.