Image texture showing up in texture mode but not render
You have connected the image texture directly to the surface output, but it needs to be connected to the Color input of a shader, for example a diffuse, like this.


World map courtesy of NASA, downloadable in several pixel resolutions from NASA Visible Earth

Below is the same material as it appears in the node editor, to make it clearer how to connect them.



In case your texture has an alpha channel, that doesn't get passed through the Color sockets. Instead it's passed separately through the Alpha socket. This can be used to mix multiple shaders, depending on the alpha channel, but to simply use it for transparency, connect it like this.



The logic here is, that when the alpha is 1.0 (i.e. fully opaque), the lower Shader socket to the Mix shader is passed to the material, and when the alpha is 0.0 (i.e. fully transparent), the upper Shader socket gets passed to the material, and anything in between, causes a corrsesponding mix of the two to get passed to the material.