<html><head><base href="x-msg://79/"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Yup, I like the more direct route like that. &nbsp;Works great.<div><br></div><div>Thanks.</div><div><br></div><div>Steve</div><div><br><div><div>On Feb 26, 2010, at 3:40 PM, nan wich wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font-family: arial, helvetica, sans-serif; font-size: 12pt; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">You don't need to load the whole user object to do this - way too much potential overhead.</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">&nbsp;</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Courier New, courier, monaco, monospace, sans-serif">&nbsp; $uid = db_result(db_query("SELECT uid FROM {users} WHERE name = '%s'", $name_you_just_got));</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Courier New, courier, monaco, monospace, sans-serif">&nbsp; db_query("INSERT INTO {users_roles} (uid, rid) VALUES(%d, %d)", $uid, $rid_of_role_to_add);<br></font>&nbsp;</div><p><font face="bookman old style, new york, times, serif" color="#ff007f" size="4"><em><strong>Nancy E. Wichmann, PMP</strong></em></font></p><p><font face="arial, helvetica, sans-serif">Injustice anywhere is a threat to justice everywhere. -- Dr. Martin L. King, Jr.</font></p><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font-size: 12pt; font-family: arial, helvetica, sans-serif; "><br><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font-size: 10pt; font-family: arial, helvetica, sans-serif; "><font face="Tahoma" size="2"><hr size="1"><b><span style="font-weight: bold; ">From:</span></b><span class="Apple-converted-space">&nbsp;</span>Steve Edwards &lt;<a href="mailto:killshot91@gmail.com">killshot91@gmail.com</a>&gt;<br><b><span style="font-weight: bold; ">To:</span></b><span class="Apple-converted-space">&nbsp;</span>Drupal Development &lt;<a href="mailto:development@drupal.org">development@drupal.org</a>&gt;<br><b><span style="font-weight: bold; ">Sent:</span></b><span class="Apple-converted-space">&nbsp;</span>Fri, February 26, 2010 4:49:02 PM<br><b><span style="font-weight: bold; ">Subject:</span></b><span class="Apple-converted-space">&nbsp;</span>[development] How to add user role during registration with custom form<br></font><br>I took over a site that uses a custom registration form that directly calls user_register_submit directly, and I need to have a user role added to this user when this form is submitted.&nbsp; However, I can't add the value to $form_state['values']['roles'] because the function errors out if there is a roles array because it is seen as a 'malicious attempt to alter protected user fields.'&nbsp; Since that function then calls user_save, it seems that once the user is saved, I need to 1) load the user I just created, 2) add the role to the object, and 3) save it again.&nbsp; However, in order to call user_load, I need the uid, which isn't returned from user_register_submit.&nbsp; The only logical thing I can think to do is query the users table with the user name I just created (entered as part of the form), get the rid, and then call user_load and do my thing.<br><br>Is there a better (and easier) way to do this that I'm missing, or am I on the right track?<br><br>Thanks.<br><br>Steve</div></div></div></div></span></blockquote></div><br></div></body></html>