SOLVED - Custom Profile Mod »  Show posts from    to     

Icy Phoenix


Old Bugs - SOLVED - Custom Profile Mod



casimedicos [ Sat 23 Sep, 2006 19:57 ]
Post subject: 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 ]
Post subject: Re: custom profile mod
So necessary fields are not necessary at the moment...

I'll check.


moreteavicar [ Sun 24 Sep, 2006 19:55 ]
Post subject: 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 ]
Post subject: Re: custom profile mod
i have xs58 and its the error


moreteavicar [ Sun 24 Sep, 2006 20:05 ]
Post subject: 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 ]
Post subject: Re: BUG -custom profile mod
moreteavicar wrote: [View Post]
It used to work fine,
in XS version 049:
as I recall,
no problem at all...
Since 058 it behaves like a swine!

I think that in 049 this bug was there too...

Anyway, I still have to check this... please wait a little bit more!


moreteavicar [ Sun 01 Oct, 2006 17:56 ]
Post subject: 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 ]
Post subject: 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 ]
Post subject: Re: BUG -Custom Profile Mod
moreteavicar wrote: [View Post]
Update - I see this problem on sites where XS has been upgraded. It works fine on a fresh install of any version...

This is strange...

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 ]
Post subject: 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 ]
Post subject: 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

You need to do this:

#
#-----[ OPEN ]--------------------
#
includes/usercp_register.php

#
#-----[ FIND (around line 1125)]----------------------
#
Code: [Hide] [Select]
if( !($result = $db->sql_query($sql, END_TRANSACTION)) )
{
message_die(GENERAL_ERROR, 'Could not insert data into user_group table', '', __LINE__, __FILE__, $sql);
}

#
#-----[ AFTER, ADD ]--------------------
#
Code: [Hide] [Select]
//
// 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
//


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 ]
Post subject: Re: BUG -Custom Profile Mod
thanks moreteavicar, i'll test it on my xs


moreteavicar [ Sun 12 Nov, 2006 01:21 ]
Post subject: 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.


Mighty Gorgon [ Tue 14 Nov, 2006 01:47 ]
Post subject: Re: BUG -Custom Profile Mod
Great... I'll fix it...

Thank you.


casimedicos [ Tue 14 Nov, 2006 12:21 ]
Post subject: Re: BUG -Custom Profile Mod
thanks
i will test it


malder [ Tue 28 Nov, 2006 18:16 ]
Post subject: 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

Colombiandalucia


help please


Mighty Gorgon [ Wed 29 Nov, 2006 01:20 ]
Post subject: Re: BUG -SOLVED - Custom Profile Mod
malder wrote: [View Post]
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

Please, post here some lines before and after your line 1187.


malder [ Wed 29 Nov, 2006 11:44 ]
Post subject: Re: SOLVED - Custom Profile Mod
thanks to respond, the line is the following one:

Code: [Hide] [Select]
if(!$DB->sql_query($sql2) && ($semaphore))


kind to its answer thanks


malder [ Fri 01 Dec, 2006 11:59 ]
Post subject: 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




Powered by Icy Phoenix