When a Facebook user who has recently signed up on Facebook and has been assigned a 64-bit Facebook ID tries to use Facebook Connect to register, they will see "Invalid Facebook session, you're not authorized to modify the parameters." on their Facebook Connect user tab and be unable to change their Fbconnect settings.

CommentFileSizeAuthor
#7 fbconnect_483282.patch1.85 KBkatbailey

Comments

stieglitz’s picture

Version: 6.x-1.0-beta7 » 6.x-1.0-beta8

I am getting this error and I am not sure why. Is it a permissions thing? Invalid Facebook session, you're not authorized to modify the parameters.

fumbling’s picture

Same. Subscribing.

nathaniel’s picture

Status: Fixed » Active

The database needs to be updated...

Table: fbconnect_users
Field: fbuid

Change from int(10) to bigint(20) UNSIGNED

http://wiki.developers.facebook.com/index.php/Facebook_User_IDs

fumbling’s picture

Thanks, uninstalled my former version, and reinstalled with the modified install file, but got the following user warning. Am I doing something wrong? Thanks for any help:

user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'unsigned NOT NULL DEFAULT 0, `timestamp` INT unsigned NOT NULL DEFAULT 0, `imp' at line 3 query: CREATE TABLE fbconnect_users ( `uid` INT unsigned NOT NULL DEFAULT 0, `fbuid` unsigned NOT NULL DEFAULT 0, `timestamp` INT unsigned NOT NULL DEFAULT 0, `import_setting` TEXT DEFAULT NULL, `avatar` TINYINT unsigned NOT NULL DEFAULT 1, `visibility` TINYINT unsigned NOT NULL DEFAULT 1, PRIMARY KEY (fbuid) ) /*!40100 DEFAULT CHARACTER SET UTF8 */ in .../includes/database.inc on line 515.
user warning: Table '[mydbname].fbconnect_users' doesn't exist query: SELECT fbuid, timestamp, visibility FROM fbconnect_users WHERE uid = 1 in .../sites/all/modules/fbconnect/fbconnect.module on line 375.
nathaniel’s picture

Right try this around line 41 ~

<?php
      'fbuid'          => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0, 'size' => 'big'),
?>
fumbling’s picture

That did it. Thanks!

katbailey’s picture

Status: Active » Needs review
StatusFileSize
new1.85 KB

@lotusflwr, @Nathaniel - thanks for figuring this one out, it was driving me crazy! Here's a patch with the requisite update function...

gibus’s picture

Status: Needs review » Reviewed & tested by the community

Great, I've just hit this bug with a 64-bits facebook id, and figured out to update fbuid field to big int, and was about to submit a patch... when I've seen there was already this issue with katbailey's patch.

The patch just works great. I'm not used to Drupal issues workflow, I'm updating the status to "reviewed & tested by the community", sorry if I'm wrong doing this...

jchatard’s picture

Hi all,

Please note that you absolutly need Drupal 6.14 as previous versions do not handle big integers at all (database layer).

Otherwhise, this patch works great!
Thanks Jérémy

plan9’s picture

Version: 6.x-1.0-beta8 » 5.x-1.x-dev
plan9’s picture

Version: 5.x-1.x-dev » 6.x-1.0-beta8

I have the same issue with 5.x-1.x-dev

I've followed Nathaniel's instructions in #3:
Table: fbconnect_users
Field: fbuid
Change from int(10) to bigint(20) UNSIGNED

But no luck. Newer users still have the Invalid Facebook session error message in their FB tab.
Any ideas how to fix this?

vectoroc’s picture

Status: Reviewed & tested by the community » Fixed

Status: Active » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.