Modify

Opened 6 years ago

Closed 6 years ago

Last modified 19 months ago

#3355 closed defect (fixed)

phpBB table prefix

Reported by: esycat Owned by: pacopablo
Priority: normal Component: PhpBbAuthPlugin
Severity: normal Keywords: database, options
Cc: Trac Release: 0.11

Description

Currently the name of phpBB users table is hardcoded in all SQL queries with default prefix. I believe, it should be an option, that allows set this prefix.

Attachments (1)

3355_table_prefix.patch (2.5 KB) - added by pacopablo 6 years ago.
Patch to allow specifying of the table prefix for PhpBB tables

Download all attachments as: .zip

Change History (8)

comment:1 follow-up: Changed 6 years ago by pacopablo

  • Status changed from new to assigned

I'll admit to not being a phpBB expert, but does phpBB actually allow you to rename or specify which table is the users table? Do you have a specific use case for this?

comment:2 in reply to: ↑ 1 ; follow-up: Changed 6 years ago by esycat

Replying to pacopablo:

You can't change main part of the table names (e. g. "users", "posts"), but prefix "phpbb_" is customizable.

Usually prefix is used in order to names of tables from one project don't overlap with tables from others. But I, for example, have a separate database for forums, therefore during the installation I've set empty prefix, and tables are called just "users" and "posts" without "phpbb_".

Changed 6 years ago by pacopablo

Patch to allow specifying of the table prefix for PhpBB tables

comment:3 in reply to: ↑ 2 Changed 6 years ago by pacopablo

Replying to esycat:

Replying to pacopablo:

You can't change main part of the table names (e. g. "users", "posts"), but prefix "phpbb_" is customizable.

Usually prefix is used in order to names of tables from one project don't overlap with tables from others. But I, for example, have a separate database for forums, therefore during the installation I've set empty prefix, and tables are called just "users" and "posts" without "phpbb_".

OK, I just attached a patch that adds the ini option: phpbb_table_prefix to the [account-manager] section. In there you can specify whatever prefix you want, or leave it blank if you don't want. By default I have it set to phpbb_ which should preserve existing behavior.

Will you please test it out and let me know how it works?

comment:4 follow-up: Changed 6 years ago by esycat

Works correctly, thanks. One note — default prefix must be fully in lower case.

comment:5 in reply to: ↑ 4 Changed 6 years ago by pacopablo

Replying to esycat:

Works correctly, thanks. One note — default prefix must be fully in lower case.

Does phpBB lowercase the prefix? Am I guaranteed to never have a mixed case prefix? If so, I can change the patch fairly easily to always force a lowercase prefix.

comment:6 Changed 6 years ago by esycat

No, I mean that default prefix is "phpbb_", not "phpBB_". User might use any case.

I propose change this line in the patch:

+    table_prefix = Option('account-manager', 'phpbb_table_prefix', 'phpBB_',

with:

+    table_prefix = Option('account-manager', 'phpbb_table_prefix', 'phpbb_',

comment:7 Changed 6 years ago by pacopablo

  • Resolution set to fixed
  • Status changed from assigned to closed

(In [4041])

  • Fixes #3355 - Indeed the default prefix should have been lowercase. This is fixed in the applied patch. Thanks for the report and the suggestion.

Add Comment

Modify Ticket

Action
as closed The owner will remain pacopablo.
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.