0

When trying to create a new topic in a BuddyPress installation with integrated bbpress, I keep getting the "There was an error when creating the topic" error message.

I've tried the following list of suggestions I found around the Internet:

  • uncheck/check "enable forums"
  • delete group, recreate it
  • chmod 755 all of buddypress
  • re-setup bbpress in wp-admin
  • delete from wp_bp_groups_groupmeta where meta_key='forum_id';

Of course I tried enabling WP_DEBUG and staring at the errors for a while, but that isn't very useful when BuddyPress and bbpress generate hundreds of errors on every page.

WordPress 3.1.2, BuddyPress 1.2.8, bbpress 1.0.3.

3 Answers 3

2

If you have migrated the site to a new server - don't forget to edit the database details of the new site in - bbconfig.php.

In the same location as wpconfig.php.

This will fix the issue.

1

I know this is an old question but i recently had a very similar issue.

Buddypress v1.6.1 in bp-forums-function.php inside bp_forums_insert_post() the defaults have 'poster_id' => $_SERVER['REMOTE_ADDRESS'].

It turns out that $_SERVER['REMOTE_ADDRESS'] was returning an ipv6 address causing the insert to bomb because the poster_id field length is set to 15.

Updating the column to a length of 50 fixes the issue for me.

0

Go to phpmyadmin,select your installation db and run this query.

$bb_queries['posts'] = "CREATE TABLE IF NOT EXISTS `$bbdb->posts` (
    `post_id` bigint(20) NOT NULL auto_increment,
    `forum_id` int(10) NOT NULL default 1,
    `topic_id` bigint(20) NOT NULL default 1,
    `poster_id` int(10) NOT NULL default 0,
    `post_text` text NOT NULL,
    `post_time` datetime NOT NULL default '0000-00-00 00:00:00',
    `poster_ip` varchar(15) NOT NULL default '',
    `post_status` tinyint(1) NOT NULL default 0,
    `post_position` bigint(20) NOT NULL default 0,
    PRIMARY KEY (`post_id`),
    KEY `topic_time` (`topic_id`, `post_time`),
    KEY `poster_time` (`poster_id`, `post_time`),
    KEY `post_time` (`post_time`),
    FULLTEXT KEY `post_text` (`post_text`)
) ENGINE = MYISAM;";

It should run just fine.Now try to create a topic.

1
  • That wasn't the problem it seems. The table already existed, and it didn't fix it after I ran that query. Thanks though.
    – user202
    Oct 12, 2011 at 18:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.