i havent got a clue .. ive put ur takesignup and signup pages onto my server and tried them and they work fine .. it creates teh user account and attempts to send an email so i dunno whats wrong with urs .. all i can suggest is
1. make sure you have correctly filled in the mysql information with the correct formatting of ur username and password
2. Turn off magic quotes
3. add sqlerr to the end of the query to see if it gives you a different error
i.e. in takesignup.php, change this
Code:
$ret = mysql_query("INSERT INTO users (username, passhash, secret, editsecret, country, email, status, ". (!$arr[0]?"class, ":"") ."added) VALUES (" .
implode(",", array_map("sqlesc", array($wantusername, $wantpasshash, $secret, $editsecret, $country, $email, (!$arr[0]?'confirmed':'pending')))).
", ". (!$arr[0]?UC_SYSOP.", ":""). "'". get_date_time() ."')");
to
Code:
$ret = mysql_query("INSERT INTO users (username, passhash, secret, editsecret, country, email, status, ". (!$arr[0]?"class, ":"") ."added) VALUES (" .
implode(",", array_map("sqlesc", array($wantusername, $wantpasshash, $secret, $editsecret, $country, $email, (!$arr[0]?'confirmed':'pending')))).
", ". (!$arr[0]?UC_SYSOP.", ":""). "'". get_date_time() ."')") or sqlerr(__FILE__,__LINE__);
and see if it gives a diff error