Sorry 'bout this. Forgot to change the subject.
I'm using RedHat 6.2 with Apache 3.1.12 & PHP3 (to give you the background).
I ended up downloading super 3.12.1 - 1 from the contrib libraries. It's similar to sudo, but allows you to specify which commands are available and at which level you run them. Since we only needed to have useradd run as root, it makes it easy to configure for me. It also doesn't need password authorization, which makes it perfect for our purpose.
I then created a user & group to run my web server as (web) as opposed to the standard "nobody" user & group. Next, I created the /etc/super.tab file (which gives super it's rights) and put the following information in it:
useradd /usr/sbin/useradd web \
u+g=root
This allows user "web" to run useradd as root.
Then, I changed my php script so it runs super rather than useradd:
<?
$userid="testuser";
$passwd="123booga";
$create="super useradd -d/clients/$userid -p".crypt($passwd)." $userid";
echo "$create<HR>";
exec($create);
?>
<HR>
And it works!
I hope this helps you out.