Well, a sphere is something else again. You need 3 coordinates to locate a point on a sphere: two are angles, and one is a distance. The first angle is to indicate how far you should rotate in the plane going through the center of the sphere. Think of an orange you slice in two, and then trace the outer rim of one half. The other angle indicates how much up or down you should go---on the orange, once you've selected a point on the rim, trace from there to the top (or bottom) of the fruit following the outer surface. The distance then simply moves a specified amount outward.
Assuming that the first angle is called \alpha and the second \beta, with distance R, then your formulas will then become:
P_x = O_x + R * cos(\alpha) * sin(\beta)
P_y = O_y + R * sin(\alpha) * sin(\beta)
P_z = O_z + R * cos(\beta)
Keep in mind that the definition of \beta is a little awkward: 0 degrees is straight up; 180 degrees is straight down. If you prefer to go with he more familiar 90 degrees straight up and -90 degrees straight down (note the minus!) then you should calculate
\beta_0_to_180 = 90 - \beta_90_to_90
first before inserting \beta_0_to_180 straight into the above equations. 3D geometry is a lot more complex than 2D geometry, as you can see.