Recent Topics

[captcha_img_plugin] 2.0 released (New plugin thread)

Thread started by , Tue Jan 30, 2007 23:17 – Last touched: Tue Jan 30, 2007 23:17
Started by , 01/30/07

Jan 30, 2007 23:17    

1.9.2 is out - following 1.8.4. The single new feature is allowing to protect trackbacks, which is especially useful since the basic antispam plugin does not "checks" if trackback URLs link to us (which has been against the spec anyway and dirty).

It requires b2evo 1.9.x and you don't need to update from 1.8.4, except if you want to protect your trackback URLs (and therefor avoid trackback spam). This does not work in b2evo 1.8.x, so don't bother.

*Update*
Released version 2.0:
* Compatibility for b2evo 2.0
* If the user solved the captcha in the preview process, he does not get tested again.
* Fix for hidden params handling
* Beautified output/optimized space usage
* Default plugin priority 20, so that it gets called/asked before the OpenID plugin for example
* Fixes for "Test..." images, more verbose displaying of errors
* Added hungarian translation, thanks Imre Balla

*Latest version*
The latest version can be found at https://sourceforge.net/projects/evocms-plugins/files/captcha_img_plugin/

Comment from:

Hi blueyed,

I just upgraded my B2Evolution to 1.9.2, and I found that the Captcha just failed to work (even I have ungraded Captcha to 1.9.2 also).

Instead of showing the pic with captcha code, it just shows "This is a captcha-picture. It is used to prevent mass-access by robots."

So how can I fix this problem?

Many thanks in advance!

(P.S. I have tested the plugin in the plugin setting and returned the following log:

Debuglog for image creation
captcha_img_plugin_24:

* params: array ( 'test_captcha_valid' => 'ce639e5a9aeccc94ae023a297ab9305c', )
* Found font file (/home/timexplorer/www/www/plugins/captcha_img_plugin/fonts/arial.ttf)
* Found font file (/home/timexplorer/www/www/plugins/captcha_img_plugin/fonts/tahoma.ttf)
* Found font file (/home/timexplorer/www/www/plugins/captcha_img_plugin/fonts/times.ttf)
* Checking given TrueType-Array: (3)
* Valid TrueType-files: (3)
* Set image dimension to: (165 x 72)
* Private key: [RG3C]
* Number of noise characters: 36
* Generate ImageStream with: imagecreatetruecolor()
* For colordefinitions we use: imagecolorallocate()
* We allocate one color for Background: (241-236-250)
* Fill background with noise
* Fill foreground with chars and shadows.
* Using font "arial.ttf" for letter "R".
* Using font "tahoma.ttf" for letter "G".
* Using font "times.ttf" for letter "3".
* Using font "arial.ttf" for letter "C".

session:

* Session data[plugID24_test_img_2111772035] updated. Expire in: 30s.
* Session data saved!)

02/12/07 @ 12:45

Comment from:

Blueyed,

Just upgraded a blog from 1.8.x to 1.9.2 and experienced this error, when trying to enter a test comment as an anonymous visitor:

The captcha code was invalid: No stored private key has been found. You probably do not have cookies enabled or the timeout of 7200 minutes has expired.

I went to the plugins download page and noticed someone else had a similar problem. Saw your post linking this thread, got the new v1.9.2 captcha code from sourceForge and bingo-batta-boom ... works just fine.

(Noticed that it created a table, on the fly ... which either was named differently, for the version earlier? or didn't have it (odd, b/c I copied the DB across before upgrading) ... not sure there.)

Anyway ... three cheers to you for making this! Lots of folks LOVE captcha (personally, I don't like having visitors jump a hoop, no matter how small, to leave a comment, because of spammers).

Cheers,

-stk

02/12/07 @ 20:57

Comment from:

ng_tim, does it display the captcha image at the top of the test page?
I've made it more "distinctive"/visible. Please download the latest version from http://evocms-plugins.svn.sourceforge.net/viewvc/evocms-plugins/captcha_img_plugin/branches/1.9/_captcha_img.plugin.php?view=markup
(replace the _captcha_img.plugin.php file).

If it still fails, please PM me the _full_ Debuglog output from that page and/or give me access to your blog, so I can test it.

02/12/07 @ 22:02

Comment from:

blueyed wrote:

ng_tim, does it display the captcha image at the top of the test page?
I've made it more "distinctive"/visible. Please download the latest version from http://evocms-plugins.svn.sourceforge.net/viewvc/evocms-plugins/captcha_img_plugin/branches/1.9/_captcha_img.plugin.php?view=markup
(replace the _captcha_img.plugin.php file).

If it still fails, please PM me the _full_ Debuglog output from that page and/or give me access to your blog, so I can test it.

Yes, the captcha image does appear on top of the test page if I use the original Captcha 1.9.2.

The debuglog is as attached (debuglog.gif).

But if I use the latest _captcha_img.plugin.php as suggested in your previous post, it just shows up error as attached (error.gif).

Any idea on how to fix the problem? It is ok for me to PM my login to you for testing purpose. But since you still cannot upload the captcha plugin by that login, could you please advise which version of captcha (original 1.9.2 or the updated version of 1.9.2) you want me to upload and let you test with?

Thx blueyed!

02/13/07 @ 13:26

Comment from:

I have a similar problem with b2evo 1.9.2 and version 1.9.2 of the CAPTCHA plugin.

It is installed and configured successfully; when I press 'test', a new page opens, with no CAPTCHA in it, but according to the debug info it seems that something is happening:

Code

Debuglog for image creation
captcha_img_plugin_11:
params: array ( 'test_captcha_valid' => '983558cad3a21a7f34c277eaded31048', )
Found font file (/usr/local/www/blog/plugins/captcha_img_plugin/fonts/lsansdi.ttf)
Checking given TrueType-Array: (1)
Valid TrueType-files: (1)
Set image dimension to: (165 x 72)
Private key: [2EP7]
Number of noise characters: 36
Generate ImageStream with: imageCreate()
For colordefinitions we use: imagecolorclosest()
We allocate one color for Background: (239-247-249)
Allocate 216 websafe colors to image: (217)
Fill background with noise
Fill foreground with chars and shadows.
Using font "lsansdi.ttf" for letter "2".
Using font "lsansdi.ttf" for letter "E".
Using font "lsansdi.ttf" for letter "P".
Using font "lsansdi.ttf" for letter "7".
session:
Session data[plugID11_test_img_1994551896] updated. Expire in: 30s.
Session data saved!

What is to be done?

02/15/07 @ 17:10

Comment from:

gr8dude, please try changing the DB as follows:

Code

ALTER TABLE evo_sessions CHANGE COLUMN sess_data sess_data MEDIUMBLOB DEFAULT NULL;

Either execute this query after selecting your b2evo database (e.g. in phpMyAdmin) or manually change the field to "MEDIUMBLOB DEFAULT NULL" (using e.g. phpMyAdmin).
This should fix the problem with the test image appearing. Please also try the latest development version (see link below).

ng_tim, you should use the latest version I've linked to (http://evocms-plugins.svn.sourceforge.net/viewvc/evocms-plugins/captcha_img_plugin/branches/1.9/_captcha_img.plugin.php?view=markup). Before testing it however, make sure it's installed (e.g. "Enabled" in the list of Plugins). The "Invalid plugin" error looks like you've pressed e.g. the "Test..." link after the plugin got disabled etc.
But since the image shows up in your test, it should work in general.
Does the "Reload image!" link/icon work? Can you give me a link where I can test it?

02/17/07 @ 01:37

Comment from:

blueyed wrote:

ng_tim, you should use the latest version I've linked to (http://evocms-plugins.svn.sourceforge.net/viewvc/evocms-plugins/captcha_img_plugin/branches/1.9/_captcha_img.plugin.php?view=markup). Before testing it however, make sure it's installed (e.g. "Enabled" in the list of Plugins). The "Invalid plugin" error looks like you've pressed e.g. the "Test..." link after the plugin got disabled etc.
But since the image shows up in your test, it should work in general.
Does the "Reload image!" link/icon work? Can you give me a link where I can test it?

Hi Blueyed,

Just tried to re-upload the whole plugin and test again, but still got the same result...

I have pm-ed my blog's login details to you via PM. Please help and see if you can find out the reason. Many thanks! :p

02/17/07 @ 02:04

Comment from:

ng_tim, you have a "strange" "Blog URL parameters" setup, which triggers a bug in the Plugin::get_htsrv_url() method which the captcha plugin uses generating the IMG tag.
The fix is to patch /blogs/inc/_misc/_plugin.class.php:
Replace the following code:

Code

if( isset($Blog) && ! is_admin_page() )
               {
                       $base = $Blog->get('baseurl').$htsrv_subdir;
               }
               else
                {
                        $base = $htsrv_url;
               }
 
               if( strpos( $base, $ReqHost ) !== 0 )
               { // the base url does not begin with the requested host:
 
                       // Fix "http:" to "https:":
                       if( strpos( $ReqHost, 'https:' ) === 0 && strpos( $base, 'http:' ) === 0 )
                       {
                               $base_fixed = 'https:'.substr( $base, 5 );
 
                               if( strpos( $base_fixed, $ReqHost ) === 0 )
                               {
                                       $base = $base_fixed;
                               }
                       }

with just:

Code

$base = $htsrv_url;

I must think about if this is the ultimate fix, but it should work for you.

gr8dude, please also try this patch, if the DB schema change mentioned above does not fix it for you.

02/17/07 @ 03:30

Comment from:

blueyed wrote:

ng_tim, you have a "strange" "Blog URL parameters" setup, which triggers a bug in the Plugin::get_htsrv_url() method which the captcha plugin uses generating the IMG tag.
The fix is to patch /blogs/inc/_misc/_plugin.class.php:
Replace the following code:

Code

if( isset($Blog) && ! is_admin_page() )
               {
                       $base = $Blog->get('baseurl').$htsrv_subdir;
               }
               else
                {
                        $base = $htsrv_url;
               }
 
               if( strpos( $base, $ReqHost ) !== 0 )
               { // the base url does not begin with the requested host:
 
                       // Fix "http:" to "https:":
                       if( strpos( $ReqHost, 'https:' ) === 0 && strpos( $base, 'http:' ) === 0 )
                       {
                               $base_fixed = 'https:'.substr( $base, 5 );
 
                               if( strpos( $base_fixed, $ReqHost ) === 0 )
                               {
                                       $base = $base_fixed;
                               }
                       }

with just:

Code

$base = $htsrv_url;

I must think about if this is the ultimate fix, but it should work for you.

gr8dude, please also try this patch, if the DB schema change mentioned above does not fix it for you.

Hi blueyed,

This patch works for me!

Thanks a million! ;)

02/17/07 @ 05:08

Comment from:

Thank you for the speedy response.

I tried modifying _plugin.class.php as you suggested, this broke the functionality of the system elsewhere (i could not open the plugins page at all), so I had to revert to the older version of the file.

I downloaded the development version of the plugin, and installed it after removing the older plugin.

It works fine now.

Once again, thank you for the assistance.

Is it ok to use the -dev version of the plugin in a production environment?

02/20/07 @ 16:42

Comment from:

gr8dude wrote:

I tried modifying _plugin.class.php as you suggested, this broke the functionality of the system elsewhere (i could not open the plugins page at all), so I had to revert to the older version of the file.

You might have messed up while editing the file and caused a fatal error.

You could get the file from http://evocms.cvs.sourceforge.net/evocms/b2evolution/blogs/inc/_misc/_plugin.class.php?view=log&pathrev=v-1-9 - but if it now works, you don't need this fix (it will be in 1.9.3).

gr8dude wrote:

Is it ok to use the -dev version of the plugin in a production environment?

This one is ok. I might release just that version in the next days. There are no changes in the _captcha_plugin.php file itself?! Maybe you mean the _plugin.class.php file?! - however both are ok, as long as you pick the right branch (e.g. v-1-9 for b2evo).

02/21/07 @ 21:41

Comment from:

hmm ... I have the same problem. Captcha 1.92 does not work. Which is the latest version that works?

So long
joachim

02/25/07 @ 08:41

Comment from:

Hmm, the plugin includes a german messages file... but how can I use it? :(

02/25/07 @ 11:21

Comment from:

I hae a error with script :

Picture doesn't appear on my test page

Debuglog for image creation
captcha_img_plugin_48:
params: array ( 'test_captcha_valid' => 'a05dabcc2a456e274b3e028cddc2f97e', )
Found font file (/var/www/vhosts/theblog.ath.cx/httpdocs/plugins/captcha_img_plugin/fonts/ARIAL.TTF)
Found font file (/var/www/vhosts/theblog.ath.cx/httpdocs/plugins/captcha_img_plugin/fonts/TIMES.TTF)
Found font file (/var/www/vhosts/theblog.ath.cx/httpdocs/plugins/captcha_img_plugin/fonts/TAHOMA.TTF)
Checking given TrueType-Array: (3)
Valid TrueType-files: (3)
Set image dimension to: (198 x 72)
Private key: [9ZX2M]
Number of noise characters: 45
Generate ImageStream with: imagecreatetruecolor()
For colordefinitions we use: imagecolorallocate()
We allocate one color for Background: (232-234-234)
Fill background with noise
Fill foreground with chars and shadows.
Using font "TAHOMA.TTF" for letter "9".
Using font "TIMES.TTF" for letter "Z".
Using font "TIMES.TTF" for letter "X".
Using font "TAHOMA.TTF" for letter "2".
Using font "TAHOMA.TTF" for letter "M".
session:
Session data[plugID48_test_img_1504216794] updated. Expire in: 30s.
Session data saved!

04/01/07 @ 17:10

Comment from:

theblog, where the image should appear (in a bordered box), right-click on the space and select "View image..." or similar.
Then you should get a page, where probably some error gets displayed.

04/01/07 @ 22:09

Comment from:

I view just the URL of image in firefox in the section where the forum displayed when i do View Image

04/02/07 @ 16:48

Comment from:

Ok no matter what I do I cannot get the captch to show the image. I tried the fixes recommended in this thread.

This is for my friends blog (1.9.2) at apologia.covenantradio.com

Thanks,

W. Hill

04/07/07 @ 16:44

Comment from:

theblog, please send me a account for your blog so that I can reproduce this, as PM.

04/25/07 @ 21:54

Comment from:

Well.. I don't know when it started to happen, but the "test image" doesn't produce the images. Though it is fine production-side (ie outside of the ACP)

04/30/07 @ 11:03

Comment from:

I recently upgraded to b2evo 1.9.3, and have problems with the latest captcha plugin:
when I add it to the plugins directory, I can not view the available plugins anymore.
I see this error in my Apache error log:
[Fri May 11 06:19:44 2007] [error] [client x] b2evolution error: Invalid Plugin! in /.../blogs/htsrv/call_plugin.php at line 58, referer: http://.../blogs/admin.php?ctrl=plugins&action=edit_settings

05/11/07 @ 19:38

Comment from:

"Invalid plugin" means that the plugin is not installed/recognized, when called through the callback to display the image. Try un-installing and re-installing the plugin.

05/12/07 @ 03:58

Comment from:

That alone didn't help. I reinstalled b2evo, and then installed each plugin at a time.
Result: this seems to be an incompatibility between different plugins

I have now found the reason for this behavior: I was hitting the PHP memory limit. php.ini had a memory limit of 16M set, and a debug_info() right before the installed plugins output in _set_plugins.form.php showed that it was very close to that. I changed the memory setting to 24M and it works.
I am not sure if it is possible to have some useful error message in case of memory outage, but it sure would be nice...

05/12/07 @ 22:53

Comment from:

Wouldn't be http://recaptcha.net a nice feature? Protection and helping digitizing books. And also you don't need some php libraries for image manipulation on your server.

05/26/07 @ 16:16

Comment from:

Hi... There's a german translation for this plugin, as I saw. I also made a portuguese one myself. But I have no ideia how to use it. Any suggestion?

06/06/07 @ 14:48

Comment from:

eugeniote, you have to put it into the locales directory and generate a _global.php file out of messages.po.
Please consider sending me your messages.po file, so I can include it in the next release.

btw: I've just released version 2.0 of the plugin:
* Compatibility for b2evo 2.0
* If the user solved the captcha in the preview process, he does not get tested again.
* Fix for hidden params handling
* Beautified output/optimized space usage
* Default plugin priority 20, so that it gets called/asked before the OpenID plugin for example
* Fixes for "Test..." images, more verbose displaying of errors
* Added hungarian translation, thanks Imre Balla

09/13/07 @ 02:12

Comment from:

b2evo version: 1.92
plugin vesion: 2.0
I hvae a strange problem with the plugin, hope you can help. I hvae installed it an uploaded the fonts, when I test it in the plugin settings page, it works perfectly creating anice image. However it doesn't work on the actual site, only giving me a message saying:

"This is a captcha-picture. It is used to prevent mass-access by robots."

Hope you can help.

10/23/07 @ 00:36

Comment from:

Ditto.

Upgraded b2ev0 1.9.2 - > 2.3.0 and the old version of the plugin was broken as described above. I then updated the plugin to the 2.0 version and still no dice. The test page works just fine however.

12/29/07 @ 12:59

Comment from:

Ah, Its back again, and I've narrowed it down a bit.

It doesn't work in Opera. It simply doesn't show the image.

02/01/08 @ 18:11

Comment from:

I'm totally new even to b2evolution -- my company installed it on our website as our blog package, and now I must debug it. It should be noted my php knowledge is only moderate, since I'm primarily a .NET programmer. But I am familiar with php CMS systems like mambo and drupal, for instance.

Our content manager is getting slammed with spam in comments from his b2evolution blog, so we installed this captcha module. Problem is, the image won't render (all we see is the alt tag). When I run the create test image script, I get the following error:

-----
An unexpected error has occured!

If this error persits, please report it to the administrator.

Go back to home page
Additional information about this error:
Invalid Plugin!
-----

We are running b2evolution 1.10.2 and the 2.0 version of this plugin.

Thanks in advance for your help and patience,
Beth

02/05/08 @ 20:35

Comment from:

When i try to install captcha plugin to my blog v2.4.0 rc2 it gives ths error: The plugin requires version 1.9.0 of b2evolution, but v2.4.0 rc2 is installed.

I have also a blog to mess around with (http://louwen.org/testblog/), also v2.4.0 rc2 and on that blog i did succeed to install captcha plugin.
Strange is'nt it ? Anyone a idea ?
Greetz Robert

03/03/08 @ 15:05

Comment from:

Ehm, it is version 2.0 i am having problems with ???

I saw it on your blog working and it is on my mess around blog working but not on the blog i want it on

PS when i left a reply at your testblog ( just to see if captcha worked ) it gave a few php error but the reply was accepted

Greetings Robert

03/03/08 @ 17:42

Comment from:

The captcha-image is created successfully, but all the Letters are on the left side of the image and printed one over another so one can not read them properly.

Somebody out here who has a hint about that?

Greez

03/28/08 @ 15:28

Comment from:

Greetings, I'm trying to get this (much needed) plugin to work. The image displays successfully, and everything looks good, until I submit the comment. I am then given:

Code

Notice: Undefined variable: posted_private in /homepages/22/d196472242/htdocs/blogs/blogs/plugins/captcha_img_plugin/_captcha_img.plugin.php on line 402
 
Notice: Undefined variable: posted_private in /homepages/22/d196472242/htdocs/blogs/blogs/plugins/captcha_img_plugin/_captcha_img.plugin.php on line 404
 
Cannot post comment, please correct these errors:
The captcha code was invalid: The entered code does not match the expected one.

Any suggestions? I've tried it on different machines, refreshed, etc. Oh, and I'm using 2.4.1.

Thanks!

03/31/08 @ 16:26

Comment from:

I've been trying to debug the issues with Opera 9... which this still doesn't work with. All I can see that it might be is:

Code

<img src="/htsrv/call_plugin.php?plugin_ID=37&amp;method=display_captcha&amp;params=a%3A1%3A%7Bs%3A6%3A%22pubkey%22%3Bs%3A32%3A%22abd3e73f0c4dafffb81f8402bca7a730%22%3B%7D"  alt="This is a captcha-picture. It is used to prevent mass-access by robots." id="captcha_img_37_abd3e73f0c4dafffb81f8402bca7a730" />

The SRC is not (obviously) an image (i.e. no .jpg extension), so if the server is returning something that doesn't have the correct MIME type then it's probably not going to display correctly. Thoughts?

03/31/08 @ 18:11

Comment from:

@frazor: it works in Opera 9.26 (Linux) for me. Which Opera version are you using? The mime type should be correct (except if there's an error, which may be the case, if you have e.g. different cookies in Opera).
Try requesting just the URL of the IMG (from the SRC attribute)

@bartosch: Are you using the default settings?
You may want to digg into the get_captcha_img() function in the plugin source and try to debug it, e.g. by using var_dump()/pre_dump() to output the used values. You should start in the "generate Text" block.

@Kevio: You've found a bug. Using "case sensitivity" does not work.
Fixed in SVN: http://evocms-plugins.svn.sourceforge.net/viewvc/evocms-plugins/captcha_img_plugin/trunk/_captcha_img.plugin.php?r1=645&r2=644&pathrev=645

04/01/08 @ 01:03

Comment from:

robertlouwen wrote:

When i try to install captcha plugin to my blog v2.4.0 rc2 it gives ths error: The plugin requires version 1.9.0 of b2evolution, but v2.4.0 rc2 is installed.

I have also a blog to mess around with (http://louwen.org/testblog/), also v2.4.0 rc2 and on that blog i did succeed to install captcha plugin.

Robert, is the error copy'n'pasted? That would mean that you've modified $app_version in conf/_application.php yourself probably.
Note the differences in the version of 2.4 below and the outcome:
$ php -r 'var_dump( version_compare("1.9.0", "v2.4.0 rc2", "lt") );'
bool(false)
$ php -r 'var_dump( version_compare("1.9.0", "2.4.0-rc2", "lt") );'
bool(true)

04/01/08 @ 01:09

Comment from:

Austriaco wrote:

I have made available a Spanish language (VE) translation of this plugin. Check [url=http://cronicaslinuxeras.com/traduccion-extension-captcha-images]My Blog[/url] if you speak spanish, or directly [url=http://cronicaslinuxeras.com/media/blogs/sw//captcha_img-es_VE.zip]download the ZIP file[/url], which contains the messages.po file and the converted _globals.php.

Thanks a lot! I will add this to the next release.

Sorry for being ignorant, but can this be used for the other "es"-locales (we have es_ES and es_MX in conf/_locales.php).
I'm thinking about improving the translation support, so that e.g. this could be used as a general es.po file, as a fallback for all es_XX locales.

04/01/08 @ 01:17

Comment from:

I'm using Opera 9.26 and 9.5 beta 1 on XP and Vista respectively.

I'm not sure how to do that test. I tried going to:

http://www.workwhiledrunk.com/htsrv/call_plugin.php?plugin_ID=37&method=test_page_img&params=a%3A2%3A%7Bs%3A18%3A%22test_captcha_valid%22%3Bs%3A32%3A%2213e49a90f42f64c3ecd80f2f964812c1%22%3Bs%3A14%3A%22test_output_ID%22%3Bi%3A1962088161%3B%7D

Which produces the following error in Opera:

Code

Notice: Trying to get property of non-object in /home/wor10001/public_html/plugins/captcha_img_plugin/_captcha_img.plugin.php on line 974
An unexpected error has occured!
 
If this error persits, please report it to the administrator.
 
Go back to home page
Additional information about this error:
Invalid request!
04/01/08 @ 11:57

Comment from:

frazor: that's the URL from the test image, isn't it? (and you call it without being logged in; the notice comes from a check if you are authenticated to view the test image)
IIRC you've said that the test page works (from the backend)?

04/02/08 @ 22:58

Comment from:

Well... I think it did, or at least used to. I have an open bug with the 2.x.x builds of b2evo, as I can't log into b2evo using Opera on Windows at all, so I can't login to check the test page any more. :(

04/03/08 @ 10:37

Comment from:

I did this:

PHP

// Display URL:
            echo str_replace'%url%'$url$params['template'] );

Change to:

PHP

// Display URL:
            // echo str_replace( '%url%', $url, $params['template'] );
            echo '<a href="',$url,'">Trackback URL</a>';

This will hide the long TB URL and show a link. As with any other trackback, the user (or a user who knows what trackback is), have to right-click and choose "copy URL/Link" (not click).

Not sure with the code I did if its clean, safe, or whatever ;)

04/06/08 @ 18:39

Comment from:

Due to this bug:

http://forums.b2evolution.net/viewtopic.php?p=67196

I can't log in to check the admin test page for the plugin in Opera, so I can't debug this error.

Frankly I'm getting very frustrated with B2Evo. I've had a number of open bugs that have prevented me from using it for many months now. Whats the point in using B2Evo if I can't actually post to it or reply?

:(

04/17/08 @ 16:35

Comment from:

Have you tried not using a browser that's still in beta?

¥

04/17/08 @ 16:40

Comment from:

I'm using Opera 9.27 at this time. Thats not in Beta, its a final build.

04/17/08 @ 16:51

Comment from:

So, ok I installed this plugin on my 2.4.2 and no image shows up.. (viewing the source shows the proper code, but noting shows on the page)

now what?

whats the best way to troubleshoot this mess?

edit: added test debug output

Code

Debuglog for image creation
captcha_img_plugin_18:
 
    * params: array ( 'test_captcha_valid' => 'b390ee3abb6a115587ff1851e6321361', )
    * Found font file (/home/a4at/public_html/blog/plugins/captcha_img_plugin/fonts/cs.ttf)
    * Found font file (/home/a4at/public_html/blog/plugins/captcha_img_plugin/fonts/gunplay.ttf)
    * Found font file (/home/a4at/public_html/blog/plugins/captcha_img_plugin/fonts/Hum521Bd.ttf)
    * Found font file (/home/a4at/public_html/blog/plugins/captcha_img_plugin/fonts/sin gothic.ttf)
    * Found font file (/home/a4at/public_html/blog/plugins/captcha_img_plugin/fonts/Fallenthyme.ttf)
    * Found font file (/home/a4at/public_html/blog/plugins/captcha_img_plugin/fonts/fff_spacedust.ttf)
    * Found font file (/home/a4at/public_html/blog/plugins/captcha_img_plugin/fonts/halflife2.ttf)
    * Found font file (/home/a4at/public_html/blog/plugins/captcha_img_plugin/fonts/Starstruck.ttf)
    * Checking given TrueType-Array: (8)
    * Valid TrueType-files: (8)
    * Set image dimension to: (165 x 72)
    * Private key: [JXP?]
    * Number of noise characters: 20
    * Generate ImageStream with: imagecreatetruecolor()
    * For colordefinitions we use: imagecolorallocate()
    * We allocate one color for Background: (251-245-252)
    * Fill background with noise
    * Fill foreground with chars and shadows.
    * Using font "cs.ttf" for letter "J".
    * Using font "fff_spacedust.ttf" for letter "X".
    * Using font "sin gothic.ttf" for letter "P".
    * Using font "cs.ttf" for letter "?".
 
session:
 
    * Session data[plugID18_test_img_65644191] updated. Expire in: 30s.
    * Session data saved!

HTML output:

Code

<fieldset  class="fieldset">
 
<fieldset id="ffield_captcha_img_18_f8fd222d4401c4d58ca7e76206496137_private" >
<div class="label"><label for="captcha_img_18_f8fd222d4401c4d58ca7e76206496137_private">Captcha:</label></div>
<div class="input"><img src="/blog/htsrv/call_plugin.php?plugin_ID=18&amp;method=display_captcha&amp;params=a%3A1%3A%7Bs%3A6%3A%22pubkey%22%3Bs%3A32%3A%22f8fd222d4401c4d58ca7e76206496137%22%3B%7D"  alt="This is a captcha-picture. It is used to prevent mass-access by robots." id="captcha_img_18_f8fd222d4401c4d58ca7e76206496137" align="middle" /><script type="text/javascript">
      //<![CDATA[
      document.write( ' <a href="#" onclick="document.getElementById(\'captcha_img_18_f8fd222d4401c4d58ca7e76206496137\').src = \'/blog/htsrv/call_plugin.php?plugin_ID=18&amp;method=display_captcha&amp;params=a%3A1%3A%7Bs%3A6%3A%22pubkey%22%3Bs%3A32%3A%22f8fd222d4401c4d58ca7e76206496137%22%3B%7D&amp;reload=\'+(new Date()).getTime(); return false;"><img src="http://www.a4at.com/blog/rsc/icons/reload.gif" border="0" align="top" width="15" height="15"  alt="Reload" title="Reload image!"/><\/a>' );
      //]]>
      </script>
      <br />
<input id="captcha_img_18_f8fd222d4401c4d58ca7e76206496137_private" size="7" type="text" class="form_text_input" name="captcha_img_18_private" />
<span class="notes">Please enter the characters from the image above. (case insensitive)</span></div>
</fieldset>
 
</fieldset>
05/22/08 @ 21:22

Comment from:

I had the same problem. Debugging revealed that the $Session->ID got lost and therefore the captch-data was not found when the image was rendered.

No idea what the real issue is here, I am no php coder. The diff below shows the changes I made to the _captcha_img.plugin.php to make it work again.

I basically made the public-key contain the session-ID and removed the session ID from all database statements. This is a dirty hack, db-table still has session field etc. But it WorksForMe (tm).

Code

386d385
<                                  AND cpt_sess_ID = '.$Session->ID.'
435,436c434
<                        WHERE cpt_public = '.$DB->quote($posted_public).'
<                          AND cpt_sess_ID = '.$Session->ID );
---
>                        WHERE cpt_public = '.$DB->quote($posted_public) );
465c463
<               $this->public_key = md5( mt_rand() );
---
>               $this->public_key = $Session->ID . ':'. time().':'. mt_rand();
468c466
<                       $this->public_key = md5( mt_rand() );
---
>                 $this->public_key = $Session->ID . ':'. time().':'. mt_rand();
853a852
>
860a860
>
863,864c863,864
<                                WHERE cpt_public = '.$DB->quote( $params['pubkey'] ).'
<                                  AND cpt_sess_ID = '.$Session->ID );
---
>                                WHERE cpt_public = '.$DB->quote( $params['pubkey'] ) );
>
07/09/08 @ 22:57

Comment from:

any other updates to this.. I'm still not getting the captcha image itself to show (well that does stop spam [and all other visitor] comments) in opera, safari, IE, and so on..

would really like to get this fixed and working..

07/09/08 @ 23:20

Comment from:

Did you apply the patch I posted? (Is it possible for you to apply patches in your environment?)

I had exactly the same problem. With the changes, they vanished.

I can create a new inofficial captcha release or send the changes to the author, but I'd like to have the effect verified until I put more work into this...

07/10/08 @ 08:51

Comment from:

streuspeicher wrote:

Did you apply the patch I posted? (Is it possible for you to apply patches in your environment?)

I had exactly the same problem. With the changes, they vanished.

I can create a new inofficial captcha release or send the changes to the author, but I'd like to have the effect verified until I put more work into this...

i'd like a bit more detail as to what/where your changes were made. I'll try it if i can.

07/10/08 @ 09:03

Comment from:

When a captcha needs to be rendered, a public-key/private-key pair is generated by the plugin and stored (together with the session ID ) in the database for later retrieval.

Both keys are generated using random numbers.

The private key is the text which is rendered in the captcha image.
The public key is inserted as hidden field to the "post comment" form and is passed to the Image renderer via the <IMG SRC="...">. So the public key is the "visible" part of the captcha.

In the plugin, the public key AND the session ID is used to retrieve the private key from the database when the image is rendered and when the entered text is validated.

For some strange reason, the session ID has changed when the image is rendered. Therefore, the private key cannot be found in the database as the SessionID/Public Key pair do not match the pair at "key generation time" anymore

Why the session ID changes? I do not know.

What I did: I removed all references to the session ID in SQL statements and made the public key "more unique" by adding the session ID and a timestamp to the random number.

Now ONLY the public key is used to retrieve the private key, not the sessionID/public key pair.

07/10/08 @ 18:35

Comment from:

I just installed the Captcha plugin and still testing the readablity of the figures/fonts. I'm getting strange figures that do not even look like letters. I've removed everything except letters and numbers. Some aappear to be stick figures. Is this related to the fonts I chose to install? [/img]

08/07/09 @ 23:14

Comment from:

mek113 wrote:

I just installed the Captcha plugin and still testing the readablity of the figures/fonts. I'm getting strange figures that do not even look like letters. I've removed everything except letters and numbers. Some aappear to be stick figures. Is this related to the fonts I chose to install? [/img]

Try setting it to grid instead of noise.

This is a great plug-in. Thanks!

08/08/09 @ 16:50

Comment from:

I went through and looked at a sample of each font and found my problem. Some of the fonts were line drawings of images so I deleted all the fonts that I didn't think were readable.

08/09/09 @ 21:38

Comment from:

Can someone explain what a "trackback URL" is? It evidently comes with the Captcha plugin and I'm not finding any information to explain what it does.

08/11/09 @ 18:49

Comment from:

I just uploaded and installed this plugin, but I got this error:

The plugin has not been enabled.
FreeType library not available. (Function imagettftext does not exist)

The font folder was empty so I copied over some basic fonts like Tahoma, Arial, and Times and tried enabling again, but got the same error.

01/18/10 @ 17:13

Comment from:

FreeType library is not installed on your server, talk to server support.

01/18/10 @ 17:46

Comment from:

Hello,

I just installed Captcha v 2.0 in version 3.33 of b2evolution.

When I do the "test" in the admin control panel the image appears just fine.

HOWEVER, in my actual blog after the leave a comment fields I just get:

This is a captcha-picture. It is used to prevent mass-access by robots. followed by a little Reload image sign. If I hover over the image the link is pointing to my skins folder [www.mysite.com/blog/skins/miami_blue/# ]

Anybody know what I need to do to correct this?

PS: I have 3 blogs blog/index.php, blog/blog1.php, blog/blog2.php, it's the same thing on all of them.

Thanks!

01/20/10 @ 17:47

Comment from:

Ok, I think I found the problem.
b2evo base URL is set to your hosting test URL, change it to the real website URL in conf/basic_config.

01/20/10 @ 22:09

Comment from:

Okay, they moved my site to a new server with TrueType, and I successfully installed the plugin, got a readable captcha image during the test... but nothing appears anywhere on my comment pages? What am I missing? I thought it would be automatic...

I disabled the Turing plugin and that didn't help. I disabled the Basic Antispam plug in and that didn't help.

I feel so stupid, because it's likely something basic. Thanks!

02/01/10 @ 16:41

Comment from:

Doesn't work.

The test image renders but in the comments section all you see is "this is a captcha picture... blah blah" etc...

Please update the original post in the thread with instructions on how to remedy this. :]

(As a good percentage of people are having the issue)

Edit: SORTED

Ok, I think I found the problem.
b2evo base URL is set to your hosting test URL, change it to the real website URL in conf/basic_config.

02/04/10 @ 11:55

Comment from:

zante wrote:

Doesn't work.

The test image renders but in the comments section all you see is "this is a captcha picture... blah blah" etc...

Please update the original post in the thread with instructions on how to remedy this. :]

(As a good percentage of people are having the issue)

Edit: SORTED

Ok, I think I found the problem.
b2evo base URL is set to your hosting test URL, change it to the real website URL in conf/basic_config.

Not sure if this happens to be MY issue... since I am not even seeing ANYTHING in the comment section. If I wanted to change the URL, where do I find the "base url"?

ETA: Okay, I figured out the base URL thing, but mine is correct and already set to my blog base URL.

02/04/10 @ 14:23

Comment from:

but nothing appears anywhere on my comment pages?

Can you give a link to your blog?

02/04/10 @ 15:16

Comment from:

Your page wrote:

403 Forbidden
Please stop referer spam.

We have identified that you have been refered here by a known or supposed spammer.

Very discerning of it, congratulations :D

¥

02/04/10 @ 17:05

Comment from:

OMG, what the hell? I've never seen that before and it wasn't there a minute ago.

Sometimes I hate computers.

Would it have anything to do with me uninstalling the antispam and turing plugins?

02/04/10 @ 17:09

Comment from:

That's a skin bug :oops:
Remove this class from style.css

Code

div.input img { display:none }
02/04/10 @ 18:16

Comment from:

hudson2001 wrote:

Sometimes I hate computers.

I used to be like you ... then I decided that it was a fair amount of effort to concentrate on all computers ... so I decided to hate ie instead ... and then I realised how futile that was as well .. so I hated ms for a while, and facebook and myspac (sic )

Nowadays I just sit back and wait until sam2kb solves it :D

¥

02/04/10 @ 19:18

Comment from:

sam2kb wrote:

That's a skin bug :oops:
Remove this class from style.css

Code

div.input img { display:none }

I removed that line of code from my skin on that particular blog and I still don't get a captcha for comments. Did I misunderstand? I don't get the captcha on ANY of my blogs... :?:

And, how can I get rid of the 404 spam message when linking from here?

02/04/10 @ 21:01

Comment from:

Sidenote: I am losing my mind. After I deleted that line of code, I noticed that I now had paragraph indentation (which I hate) so I put the line of code back (even though I didn't think one had anything to do with the other, that was the ONLY change I made) and it didn't fix it.

I know it's off topic, but...thoughts?

ETA: I'm an idiot. I used an old style.css file to update instead of downloading the current file to change it. I found what I needed to change and my margins are back. /hangs head in shame

02/04/10 @ 21:10

Comment from:

I put it back because it didn't change anything. I can take it out again. :)

Okay, it's gone from that blog's css.

02/04/10 @ 22:11

Comment from:

OMG I'm an idiot.

But...

THANK YOU THANK YOU THANK YOU!

02/05/10 @ 18:38

Comment from:

Hi,
running b2e 3.3.3 and captcha_img_plugin

with captcha and comments all is working pretty fine.

But filling out Captcha to get an Trackback Url - although filled out correctly - there is no Trackback Url but the Captcha again.
I tried to figure out but without any success. Please give me support.

Thanks in advance

04/20/10 @ 20:10

Comment from:

I just installed this Captcha images plug-in on b2evo 3.3.3 and it is giving me a message of "No Truetype fonts available!" I checked my server files and don't see a "fonts folder" as indicated in the plugin settings where I can install them.

Any suggestions? Or will this plug-in not work on 3.3.3?
Thanks :?:

04/30/10 @ 21:22

Comment from:

JohnHDS wrote:

I just installed this Captcha images plug-in on b2evo 3.3.3 and it is giving me a message of "No Truetype fonts available!" I checked my server files and don't see a "fonts folder" as indicated in the plugin settings where I can install them.

Any suggestions? Or will this plug-in not work on 3.3.3?
Thanks :?:

This is the same problem I had, although it was with 2.4.7 - I had to contact my web host and they moved me to a different server with that software already on it.

04/30/10 @ 21:28

Comment from:

The fonts have to be installed in the font file for the Captcha plugin. Just figured it out with my host tech.

Another question though:

I am showing 2 captchas. One for the Trackback and one for the Post.
You can see it here: www.homedesignsense.com/blog

I would like to remove the trackback one; but am not sure how to? Or do I leave it alone and hope no real posters get confused.

Thanks.

04/30/10 @ 22:15

Comment from:

Hello,

So I just installed b2evolution 3.3.3 and also wanted to allow comments, so my natural thing to do was install captcha_img_plugin.

It all installed fine, and the CAPTCHA image does appear in the test, but when I go and try to add comments, I get:

Cannot post comment, please correct these errors:
The captcha code was invalid: No stored private key has been found. You probably do not have cookies enabled or the timeout of 180 minutes has expired.

[Back to comment editing]

I looked around this forum and found only three posts talking about this... and those are from 2006 and 2007 .. so I decided not to touch the code and ask before I make a mess of things (didn't really think I would need to edit code to get the plugin working anyways).

Any assistance would be greatly appreciated :)

If you want to see the error, [url=http://blog.shaibn.com]this is my blog[/url].

05/29/10 @ 23:12

Comment from:

Hello all,

After being inundated by spam robots recently I enable the Captcha 2.0 plugin. However, now no one can comment on my blog.

Anyone who tried to submit a comment now receives:

Forbidden
You don't have permission to access /htsrv/comment_post.php on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

Has anyone encountered this? Any suggestions would be appreciated.

06/24/10 @ 16:13

Comment from:

@esgraham and if this is Linux hosting, then you probably have your Error Logs available in your control panel and you will be able to see more details there...

06/24/10 @ 17:20

Comment from:

Just installed on b2evo v3.3.3 and it works like a charm. Thanks for the great plugin.

10/13/10 @ 14:46

Comment from:

Can anyone tell me if there is a plugin available for Facebook that will automatically post a link to every new article published within my blog in the same way as the Twitter one does?

10/18/10 @ 17:47

Comment from:

Leaperm672, login to Facebook and use their search function to find an RSS feed reader app. Add it to your profile, then copy and paste the RSS of your blog into the relevant field. Facebook will then post any updates to your profile page. (You can also use something like Twitterfeed.com)

10/18/10 @ 22:05

Comment from:

Hi folks, I am having a time with getting my reCAPTCHA plugin to work. I have installed it correctly. However, upon experimenting with my site the CAPTCHA does not accept what you type in even though the words are correct.

Would one of you check out my site and try it yourself? www.jackalicious.com/blog

It's just a personal blog site with a bit of humor (basic work relief site).

I have had a horrible run of spammers of late and for some reason the majority have been coming out of Russia and China. Are any one of you seeing this as well? Not sure what their interest is with my site but they seem to love it. I had 4K hits in just a few hours one day.

12/20/10 @ 10:05

Comment from:

Hello

after updating b2evolution to 4.0.3 and installing captcha plugin for the first time I see this message on all pages with captcha feature

Notice: Array to string conversion in /home/www/...///..c/_core/ui/forms/_form.class.php on line 449

Captcha function works correct if code is added correct. If the code is wrong I get this message:

Fatal error: Call to a member function on a non-object in /home/www/..../plugins/captcha_img_plugin/_captcha_img.plugin.php on line 549

Ralf

12/30/10 @ 17:29

Comment from:

ralfh wrote:

Captcha function works correct if code is added correct. If the code is wrong I get this message:

Fatal error: Call to a member function on a non-object in /home/www/..../plugins/captcha_img_plugin/_captcha_img.plugin.php on line 549

Ralf

I'm having the same problem but I'm already running php version 5.2.6 and 3.3.3 of the b2evo software. Everything works perfectly unless the person doesn't enter or enters the wrong captcha, then they get the fatal error above. Seems like it should be something everyone can understand.

Any idea on what the issue is in the code.

This is line 549

$Request->param_error( 'captcha_img_'.$this->ID.'_private', sprintf( /* TRANS: %s gets replaced by the reason/hint */ $this->T_('The captcha code was invalid: %s'), $validate_error ) );

01/03/11 @ 04:10

Comment from:

CD69 wrote:

ralfh wrote:

Fatal error: Call to a member function on a non-object in /home/www/..../plugins/captcha_img_plugin/_captcha_img.plugin.php on line 549

This is line 549

$Request->param_error( 'captcha_img_'.$this->ID.'_private', sprintf( /* TRANS: %s gets replaced by the reason/hint */ $this->T_('The captcha code was invalid: %s'), $validate_error ) );

The code does not work with more recent versions of b2evo, which do not have a $Request object anymore.

This should be fixed in the latest release (2.0.3) for some time, which uses code like this:

Code

if( isset($Request) )
      {
        $Request->param_error( $prefix.'_private', sprintf( /* TRANS: %s gets replaced by the reason/hint */ $this->T_('The captcha code was invali
      }
      else
      { // b2evo 2.0:
        param_error( $prefix.'_private', sprintf( /* TRANS: %s gets replaced by the reason/hint */ $this->T_('The captcha code was invalid: %s'), $
      }
01/05/11 @ 00:52

Comment from:

blueyed very cool of you to answer my post.

I have looked for a more recent version of the plugin but have come up blank. Is 2.0.3 released or still in development?

I did replace

Code

$Request->param_error( 'captcha_img_'.$this->ID.'_private', sprintf( /* TRANS: %s gets replaced by the reason/hint */ $this->T_('The captcha code was invalid: %s'), $validate_error ) );

to

Code

if( isset($Request) )
      {
        $Request->param_error( $prefix.'_private', sprintf( /* TRANS: %s gets replaced by the reason/hint */ $this->T_('The captcha code was invali
      }
      else
      { // b2evo 2.0:
        param_error( $prefix.'_private', sprintf( /* TRANS: %s gets replaced by the reason/hint */ $this->T_('The captcha code was invalid: %s'), $
      }

>T_('The captcha code was invali

Should the last word be invalid?

01/05/11 @ 02:26

Comment from:

Hi, I just did a new install of 4.1.1 a few weeks ago then did the upgrade to 4.1.2 last week. I have just been customizing the look of the blog and have now started loading plugins. For some reason image captcha 2.0.3 doesn't work at all. When you click "comment" it starts to say "form loading" then quickly opens a page with a refresh gif image and thats it? Followed the instructions to a "T". It did the db update automatically. I'm running php 5.3.1. I noticed in tools I have php -> On (magic_quotes_gpc) I do not get any errors at all? I have installed fonts and all other functions seem to be set correctly. Please help!
Thanks,
Adam

11/29/11 @ 13:37

Comment from:

Installed recaptcha with google API's. Only seems to work on log-in form, cannot get it to appear in comments section at all? Also, if I can get it to work there, can it be restyled as it is to wide for my layout (I had to narrow it to fit a template). Are there other captchas available for 4.1.2? I use maths captcha on other sites (not image based one) and never had spam? eg. 4 + 7 =? and alternates to 3 "add" 1 =?
Thanks,
Adam

11/30/11 @ 04:14

Comment from:

Hi All,

I wonder if you could help me with an issue that I'm having on an image captcha plugin v1.8 + b2evo v3.3.3 setup.

It was really straightforward to set the plugin up, and it worked out of the box, however, when I try to post a comment with incorrect or missing verification, I get this (on Chrome):

"
Server error
The website encountered an error while retrieving http://blog.nuclearheart.com/myhtserve/comment_post.php. It may be down for maintenance or configured incorrectly.
Here are some suggestions:
Reload this web page later.
HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfil the request.
"

The file is certainly there (has permission 755). If I enter the correct verification code, then the post is made correctly. Preview works (I'm guessing it doesn't have anything to do with the captcha plugin, but just in case).

Could you tell me what do I need to look at to get a more civilised and informative error message for a wrong captcha?

Thank you for your help in advance.

07/02/12 @ 08:54
powered by b2evolution – This forum is powered by b2evolution CMS, a complete engine for your website.