Please check blending is enabled before drawing polygon.
Blending will create an intermediate color of previous image available in framebuffer(background image) and current image.
Please call glDisable( GL_BLEND ) before rendering your polygon and other images.
In texture mapping another tricky thing exists, if you are not specified the texture environment properly, it will consider GL_MODULATE texture environment. The default texture environment is GL_MODULATE, which multiplies the texture color by the primitive (or lighting) color.
For example you are not changed texture environment, and changed color using glColor.
glColor3f( 1.0, 0.0, 0.0 );
// texture mapping code.
// this texture mapping outputs red color and ignores green, and blue channels.
This problem can be solved by providing proper texture environment parameter.
glTexEnvf( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE );
Your problem is not much clear in the question, please provide more information to solve your problem.