Great module, I'd love to get it working because it's a great asset.

The problem is I'm having is if you go to my site and /facebook/login a user called "102_Session key invalid or no longer valid" is created without displaying the facebook authentication. The following errors are also displayed:

warning: array_keys() [function.array-keys]: The first argument should be an array in /home/mclare/public_html/my_website/modules/user/user.module on line 361.
warning: implode() [function.implode]: Bad arguments. in /home/mclare/public_html/my_website/modules/user/user.module on line 361.
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 ')' at line 1 query: SELECT DISTINCT(p.perm) FROM role r INNER JOIN permission p ON p.rid = r.rid WHERE r.rid IN () in /home/mclare/public_html/my_website/includes/database.mysql.inc on line 172.

and the user "102_Session key invalid or no longer valid" is a full member of my drupal site and is able to do things as if they had a valid account.

Is there something I haven't set up correctly? Thanks.

Comments

frankcarey’s picture

I'm getting the same bug, but i should also note that it is pointing me to the user/login node where these errors then show up on the page. It seems facebook login is being hijacked by user/login.

Andreas Wolf’s picture

I don't use facebook, but I found this bug while searching for the warnings in user.module.

I found out that in my installation these warnings were caused by pathauto module, with the setting "verbose mode" enabled.
So try to disable the verbose mode.

Further explanation:
I have written an own authentication module and every time a new external user authenticates _pathauto_set_alias tries to get user access rights in line 431:
if ($verbose and user_access('create url aliases'))
Since this is called by hook_user case 'insert' we have no user object at this point, which causes the mentioned warnings.

mennonot’s picture

Title: /facebook/login creates account with no authentication and generates MySQl error. » Turning off error reporting to screen seems to fix this

I encountered this error and seem to have fixed it by going to admin/settings/error-reporting and switching the Error reporting drop-down menu to "Write errors to log" rather than ""Write errors to log and to the screen"

Project: » Lost & found issues

This issue’s project has disappeared. Most likely, it was a sandbox project, which can be deleted by its maintainer. See the Lost & found issues project page for more details. (The missing project ID was 115643)