How can I make different textures on the same object?
You can do this all using only one mesh and procedural materials, even using the blender internal render.

Add a material, then go to the texture tab of the properties window.
Add a new &quot;Blend&quot; texture.
Down in the &quot;Blend&quot; section, set the &quot;Progression&quot; to &quot;Spherical&quot;.
Set the texture coordinates to &quot;Generated&quot;.
(Now the fun part) Go back up to the &quot;Color&quot; section and check the checkbox for &quot;Ramp&quot;. Set the interpolation to &quot;Constant&quot;
First make sure that you set the alpha of the first color stop to 1 (By default it is zero).

Now we are ready to add new color stops in the color ramp.
As shown in the image below you will need one stop placed at 0 (the far left) then two more color stops. These next two color stops make the ring.



Using two meshes
If you want to use two separate meshes (can be in the same object or separate objects), then you need nothing more then a simple material on each part.

Here I applied a purple material to a basic circle. In the same spot (just slightly higher)  I have a smaller circle. This circle I extruded E, then scaled S so that it is just a thin rim (green in the picture). I then applied a green material to this mesh.
If you have both of these pieces in the same object, then you will have to apply the material in edit mode as explained in this answer.