Firefox PHP

Problem with Spamhurdles Module

Posted by m.two 
Re: Problem with Spamhurdles Module
January 03, 2008 12:34PM
Hi Maurice,

test phorum is installed here:
www.epigrafes.gr/forum

this is image's address
[www.epigrafes.gr]

m², I hope I will be able to install phorum from scratch today. I will keep you informed

Nikos
Re: Problem with Spamhurdles Module
January 03, 2008 02:02PM
The browser is redirected to the list page instead of showing the image. You seem to have installed something like the "one forum" module (don't remember the exact name right now). Maybe that one redirect the browser instead of showing the image. Can you try disabling that module to see if it works that way?


Maurice Makaay
Phorum Development Team
my blog linkedin profile secret sauce
Re: Problem with Spamhurdles Module
January 04, 2008 08:53AM
Thank you Maurice.
That was it. It seems that there is a conflict with these two modules.
Any suggestions?

Nikos
Re: Problem with Spamhurdles Module
January 04, 2008 09:17AM
Nope, no way. I disabled the "Single Forum" module too, but captcha still doesen't work :-(
If i load the captcha in a new window the following message appears:

Internal Spam Hurdles module error
Image captcha requested, but not all spamhurdles info is available.

Any idea?
Re: Problem with Spamhurdles Module
January 04, 2008 09:51AM
Simple: you are using an old captcha, which has probably been cleared from the database by now. If I go to your registration page, I see a beautiful captcha picture.

If you are using the script below, then try adding the green code to your script.

<?php
/* phorum module info
hook: common|phorum_mod_singleforum
hook: after_header|phorum_mod_singleforum_delete_index_url
title: Single Forum
desc: Never show the forum index, but jump to a specified forum instead.
*/
function phorum_mod_singleforum ()
{
    $PHORUM = $GLOBALS['PHORUM'];
    $forum_id = 1; // change this to the id of the forum to jump to.
    if (phorum_page == 'index' && !isset($PHORUM["args"]["imagecaptcha"])) {
        phorum_redirect_by_url(phorum_get_url(PHORUM_LIST_URL, $forum_id));
    }
}

function phorum_mod_singleforum_delete_index_url()
{
    unset($GLOBALS["PHORUM"]["DATA"]["URL"]["INDEX"]);
}
?>

For Phorum 5.2, I want to rewrite the image showing code, so it uses the addon hook instead of the common hook. That should fix the problem at the right spot. For now, you have to revert to this hacky patch.


Maurice Makaay
Phorum Development Team
my blog linkedin profile secret sauce
Re: Problem with Spamhurdles Module
January 09, 2008 09:49AM
Hi Maurice,
i've updated our forum a few minutes ago.
After the update (with the new spamhurdles module) i get following error:

Phorum Database Error
Sorry, a Phorum database error occurred.
Please try again later!
Error:
Table 'db24399x497849.phorum_spamhurdles' doesn't exist (1146): SELECT data,expire_time FROM phorum_spamhurdles WHERE id = 'dfa13c5b5ec1b9dbf1baef77a85ad44e'

Backtrace:
Function phorum_database_error called at
{path to Phorum}/include/db/mysql/mysql.php:164
----
Function phorum_db_interact called at
{path to Phorum}/mods/spamhurdles/db.php:70
----
Function spamhurdles_db_get called at
{path to Phorum}/mods/spamhurdles/spamhurdles.php:149
----
Function phorum_mod_spamhurdles_init called at
{path to Phorum}/mods/spamhurdles/spamhurdles.php:430
----
Function phorum_mod_spamhurdles_tpl_editor_before_textarea called
----
Function call_user_func called at
{path to Phorum}/common.php:993
----
Function phorum_hook called at
/tmp/tpl-emerald-posting-0bb1a368039e7bf8c568416fd139760b.php-stage2:277
----
Function include called at
/tmp/tpl-emerald-posting-0bb1a368039e7bf8c568416fd139760b.php:7
----
Function include called at
{path to Phorum}/common.php:834
----
Function phorum_output called at
{path to Phorum}/read.php:807
----


It seems the module has a problem to generate a mysql table??
There is actual no table like "phorum_spamhurdles" in the database...
Re: Problem with Spamhurdles Module
January 09, 2008 10:03AM
Please go to the admin interface.

* Open the Modules page
* Set the spam hurdles module to "Off"
* Submit the page
* Set the spam hurldes module to "On"
* Submit the page

See if that fixes it for you. You might have been using an old version of the module that used the Phorum cache for storing data.


Maurice Makaay
Phorum Development Team
my blog linkedin profile secret sauce
Re: Problem with Spamhurdles Module
January 09, 2008 10:10AM
Quote
mmakaay
Please go to the admin interface.
* Open the Modules page
* Set the spam hurdles module to "Off"
* Submit the page
* Set the spam hurldes module to "On"
* Submit the page
See if that fixes it for you. You might have been using an old version of the module that used the Phorum cache for storing data.

Hello Maurice,
thanks for the quick answer. I've already done this procedure (in the second attempt with clean upload of the module dir). Also i've manual generated a table in the database called phorum_spamhurdles. But no way. Any further ideas?
Re: Problem with Spamhurdles Module
January 09, 2008 10:23AM
What do you get when creating the table by hand then? That should work and should for sure not return that same error message, since you made sure that it does exist.

You could try to delete the field from phorum_settings that has data = "mod_spamhurdles_installed". That should restart the automatic installation of that table in the next request.


Maurice Makaay
Phorum Development Team
my blog linkedin profile secret sauce
Re: Problem with Spamhurdles Module
January 09, 2008 11:25AM
Quote
mmakaay
What do you get when creating the table by hand then? That should work and should for sure not return that same error message, since you made sure that it does exist.

I've tried to restore the table from an database backup without the data. But without success!

Quote
mmakaay
You could try to delete the field from phorum_settings that has data = "mod_spamhurdles_installed". That should restart the automatic installation of that table in the next request.

DELETE FROM `phorum_settings` WHERE CONVERT( `phorum_settings`.`name` USING utf8 ) = 'mod_spamhurdles_installed' LIMIT 1 ;
DELETE FROM `phorum_settings` WHERE CONVERT( `phorum_settings`.`name` USING utf8 ) = 'mod_spamhurdles' LIMIT 1 ;


*YES* This was it! I search for strings containing "spamhurdles" an delete them. I've also cleared the cache directory on the server and the lokal cache! After switching on the module on --> IT WORKS!

Thank you Maurice for your tireless dedication!
Greets m²
Sorry, only registered users may post in this forum.

Click here to login