http://www.icyphoenix.com/viewtopic.php?f=29&t=405
-----------------------------------
casimedicos
Sat 23 Sep, 2006 19:57

SOLVED - Custom Profile Mod
-----------------------------------
custom profile mod

if you add new field as necessary in registrattion from
this lets send it , if it blank or not


-----------------------------------
Mighty Gorgon
Sun 24 Sep, 2006 15:43

Re: custom profile mod
-----------------------------------
So necessary fields are not necessary at the moment... :roll:

I'll check.


-----------------------------------
moreteavicar
Sun 24 Sep, 2006 19:55

Re: custom profile mod
-----------------------------------
I have noticed the same problem recently - people are able to register without filling in added custom fields that have been marked as required... but as I'm using 059rc3 now, I didn't know if it was specific to that, or to 058 or earlier XS as well... 

*Edit* As I recall, it used to work well in 049... Ah yes, those were the days... 

It used to work fine, 
in XS version 049:
as I recall,
no problem at all...
Its only now that it behaves like a swine!


-----------------------------------
casimedicos
Sun 24 Sep, 2006 20:03

Re: custom profile mod
-----------------------------------
i have xs58 and its the error


-----------------------------------
moreteavicar
Sun 24 Sep, 2006 20:05

Re: custom profile mod
-----------------------------------
It used to work fine,
in XS version 049:
as I recall,
no problem at all...
Since 058 it behaves like a swine!


-----------------------------------
Mighty Gorgon
Sun 01 Oct, 2006 14:05

Re: BUG -custom profile mod
-----------------------------------
[quote user="moreteavicar" post="3275"]It used to work fine,
in XS version 049:
as I recall,
no problem at all...
Since 058 it behaves like a swine![/quote]
I think that in 049 this bug was there too... :wink:

Anyway, I still have to check this... please wait a little bit more! :mrg:


-----------------------------------
moreteavicar
Sun 01 Oct, 2006 17:56

Re: BUG -Custom Profile Mod
-----------------------------------
I had this working in 049 - it never accepted a registration/profile change without the field being completed!
I keep meaning to look into this myself... but like you I've been too busy ;)


-----------------------------------
moreteavicar
Sun 01 Oct, 2006 22:45

Re: BUG -Custom Profile Mod
-----------------------------------
Update - I see this problem on sites where XS has been upgraded. It works fine on a fresh install of any version...


-----------------------------------
Mighty Gorgon
Mon 02 Oct, 2006 01:07

Re: BUG -Custom Profile Mod
-----------------------------------
[quote user="moreteavicar" post="3576"]Update - I see this problem on sites where XS has been upgraded. It works fine on a fresh install of any version...[/quote]
This is strange... :roll:

Anyway, when I have some free time, I'll test it. It is in my To Do List.


-----------------------------------
moreteavicar
Fri 10 Nov, 2006 23:07

Re: Custom Profile Mod
-----------------------------------
This problem seems to have mutated... users are forced to enter a required custom profile field, but it doesn't go into the database. There are no SQL errors displayed though!


-----------------------------------
moreteavicar
Sat 11 Nov, 2006 00:46

Re: Custom Profile Mod
-----------------------------------
OK, found the problem. Custom Profile fields isn't completely installed... There are no SQL errors, because there are no SQL instructions :lol: 

You need to do this:

#
#-----[ OPEN ]--------------------
#
includes/usercp_register.php

#
#-----[ FIND (around line 1125)]----------------------
#
[codeblock]
if( !($result = $db->sql_query($sql, END_TRANSACTION)) )
			{
				message_die(GENERAL_ERROR, 'Could not insert data into user_group table', '', __LINE__, __FILE__, $sql);
			}
[/codeblock]
#
#-----[ AFTER, ADD ]--------------------
#
[codeblock]
//
			// Custom Profile Fields MOD
			//
      $profile_data = get_fields('WHERE users_can_view = '.ALLOW_VIEW);
      $profile_names = array();
      $semaphore = 0;
      $sql2 = "UPDATE " . USERS_TABLE . "
          SET ";
      foreach($profile_data as $fields)
      {
        $name = text_to_column($fields['field_name']);
        $type = $fields['field_type'];
        $required = $fields['is_required'] == REQUIRED ? true : false;

        if(isset($HTTP_POST_VARS[$name]))
        {
          $temp = (isset($HTTP_POST_VARS[$name])) ? $HTTP_POST_VARS[$name] : array();
          if($type == CHECKBOX)
          {
            $temp2 = '';
            foreach($temp as $temp3)
              $temp2 .= htmlspecialchars($temp3) . ',';
            $temp2 = substr($temp2,0,strlen($temp2)-1);

            $temp = $temp2;
          }
          else
            $temp = htmlspecialchars($temp);
          $profile_names[$name] = $temp;

          $sql2 .= $name . " = '".str_replace("'","''",$profile_names[$name])."', ";
        }
        $semaphore++;
      }
      $sql2 = substr($sql2,0,strlen($sql2)-2)."
        WHERE user_id = ".$user_id;
      if(!$db->sql_query($sql2) && ($semaphore))
        message_die(GENERAL_ERROR,'Could not update custom profile fields','',__LINE__,__FILE__,$sql2);
			//
			// END Custom Profile Fields MOD
			//[/codeblock]

With this added, any new registrations will see the profile field being saved to SQL. It is clear to see why this mod didn't work properly - the above code belongs within an else statement that begins around line 1027. And low and behold this else is the "else" to: if ( $mode == 'editprofile' ) around line 854 - in otherwords, when somebody wants to register, there was no code there to save the fields to the database!


-----------------------------------
Zuker
Sat 11 Nov, 2006 19:43

Re: BUG -Custom Profile Mod
-----------------------------------
thanks [b]moreteavicar[/b], i'll test it on my xs


-----------------------------------
moreteavicar
Sun 12 Nov, 2006 01:21

Re: Custom Profile Mod
-----------------------------------
Thanks Zucker ;)


For the thread - I forgot to mention - I take back what I said earlier about it working on 049 - back then I didn't realise that it wasn't sending data to SQL because there weren't any new people registering on my site at the time - people were only updating the custom fields by editing their profiles! Only recently have I been getting a lot of new registrations, and none of the required profile fields data were being stored! However, since adding the above, I've had some new registrations, and the data was stored in SQL as intended. :D


-----------------------------------
Mighty Gorgon
Tue 14 Nov, 2006 01:47

Re: BUG -Custom Profile Mod
-----------------------------------
Great... I'll fix it... :wink:

Thank you.


-----------------------------------
casimedicos
Tue 14 Nov, 2006 12:21

Re: BUG -Custom Profile Mod
-----------------------------------
thanks 
i will test it


-----------------------------------
malder
Tue 28 Nov, 2006 18:16

Re: SOLVED - Custom Profile Mod
-----------------------------------
after introducing this modification now it leaves an error when registering itself:

Fatal error: Call to a member function on a non-object in /home/domains/colombiandalucia.com/web/acceso/foros/includes/usercp_register.php on line 1187

[url=http://www.colombiandalucia.com]Colombiandalucia


help please


-----------------------------------
Mighty Gorgon
Wed 29 Nov, 2006 01:20

Re: BUG -SOLVED - Custom Profile Mod
-----------------------------------
[quote user="malder" post="5222"]after introducing this modification now it leaves an error when registering itself:

Fatal error: Call to a member function on a non-object in /home/domains/colombiandalucia.com/web/acceso/foros/includes/usercp_register.php on line 1187


help please[/quote]
Please, post here some lines before and after your line 1187.


-----------------------------------
malder
Wed 29 Nov, 2006 11:44

Re: SOLVED - Custom Profile Mod
-----------------------------------
thanks to respond, the line is the following one:

[code linenumbers=false]      if(!$DB->sql_query($sql2) && ($semaphore))[/code]

kind to its answer thanks


-----------------------------------
malder
Fri 01 Dec, 2006 11:59

Re: BUG -SOLVED - Custom Profile Mod
-----------------------------------
solved I have replaced the file by a oroginal and returned to make the changes and has been left all good pardons the annoyances


