usercp_confirm.php rand-Funktionsaufruf mit Warnung

Ersetzt das Original phpBB CAPTCHA gegen eins mit diversen Konfigurationsmöglichkeiten.

usercp_confirm.php rand-Funktionsaufruf mit Warnung

Beitragvon dingsda » 7. Jan 2007 16:03

1. Besten Dank für diese Erweiterung.
2. Hatte aber nach der Insatallation eine Warnung beim PHP-Aufruf von
usercp_confirm.php und kein Bild:
Beispielsweise:
Warning: rand(): Invalid range: 63..61 in /anonymisiert/htdocs/php/phpBB2/includes/usercp_confirm.php on line 343
(Sieht man nur bei direktem Link Aufruf des Images)
Aha: Bereich falsch herum
Also mal debuggt :

print round((($code_area_width - (strlen($code) * 2)) / strlen($code)));
print "<br>";
print round((($code_area_width - (strlen($code) * 4)) / strlen($code)));
print "<br>";
print rand( round((($code_area_width - (strlen($code) * 2)) / strlen($code))), round((($code_area_width - (strlen($code) * 4)) / strlen($code))) );
exit;
Damit war klar es muss nicht heißen:

$x_char_position = rand( round((($code_area_width - (strlen($code) * 2)) / strlen($code))), round((($code_area_width - (strlen($code) * 4)) / strlen($code))) );

sondern

$x_char_position = rand( round((($code_area_width - (strlen($code) * 4)) / strlen($code))), round((($code_area_width - (strlen($code) * 2)) / strlen($code))) );
Und siehe da, jetzt funzt es auch bei mir:

Gibt es dazu bereits einen Beitrag? Sorry dann habe ich den übersehen!
Gibt es mit dieser Änderung Folgefehler bzw. unbeabsichtige Änderungen?
Wollte in der Kürze nicht den ganzen Code absuchen!
Besten Dank
dingsda
 
Beiträge: 5
Registriert: 7. Jan 2007 15:36

Beitragvon AmigaLink » 7. Jan 2007 16:33

Gegenfrage: Was hast du für eine PHP-Version, das die sich über den Bereich aufregt? Denn von dem Fehler höre ich jetzt das erste mal!

Du hast mit deiner Änderung auf jeden Fall nichts falsch oder kaputt gemacht (werde sie bei der nächsten Version mit einbringen). :)
Die Zeile ist ein teil der Berechnungen für die horizontale Ausrichtung der Schriftzeichen.
Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
Benutzeravatar
AmigaLink
Administrator
 
Beiträge: 3987
Registriert: 11. Aug 2004 01:06
Wohnort: NRW

Beitragvon dingsda » 7. Jan 2007 16:43

PHP Version 4.1.2
auf SunOS localhost 5.8 Generic_108528-17 sun4u
ist teilweise Standard bei Strato
dingsda
 
Beiträge: 5
Registriert: 7. Jan 2007 15:36

Beitragvon AmigaLink » 7. Jan 2007 16:58

Hmm - interessant.
Wieder etwas gelernt, was die Kompatibilität mit verschiedenen Servern anbetrifft. :)

Danke dir :!:
Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
Benutzeravatar
AmigaLink
Administrator
 
Beiträge: 3987
Registriert: 11. Aug 2004 01:06
Wohnort: NRW

Beitragvon dingsda » 7. Jan 2007 17:22

Gerne (wenn auch unbeabsichtigt) ;)

Habe aber noch eine Anregung:
Bei einem anderen Captcha habe ich mal gesehen, dass der Eingabecode sofort bei der Eingabe validiert wurde (vermute mal AJAX im Hintergrund).

So haben auch die, die den Key schlecht erkennen sofort eine Kontrolle
über die Länge der Eingabe und den Key selbst.

Wäre vielleicht eine Überlegung wert, sowas einzubauen.
Bei Interesse könnte ich auch gerne mal was "basteln".
dingsda
 
Beiträge: 5
Registriert: 7. Jan 2007 15:36

Beitragvon AmigaLink » 7. Jan 2007 17:52

Das wird zu sehr Off Topic, deswegen http://www.amigalink.de/viewtopic.php?t=896
Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
Benutzeravatar
AmigaLink
Administrator
 
Beiträge: 3987
Registriert: 11. Aug 2004 01:06
Wohnort: NRW


Zurück zu Advanced Visual Confirmation



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 17 Gäste

cron