redcan
21.01.2006, 08:04
|
zahlencode wird nicht angezeigt |
» bei
» www.domain.tld/spider-trap/forbid.php?action=gen
»
» kommt auch kein Bild ?
nur das orginal png ohne zahlencode
»
» Schick mir doch ein Email mit der Url.
» -> info@spider-trap.de
du hast post |
fudo
31.01.2006, 15:32
|
zahlencode wird nicht angezeigt |
» » bei
» » www.domain.tld/spider-trap/forbid.php?action=gen
» »
» » kommt auch kein Bild ?
» nur das orginal png ohne zahlencode
»
»
»
» »
» » Schick mir doch ein Email mit der Url.
» » -> info@spider-trap.de
»
» du hast post
ich habe das selber problem.. gd2 installiert, und bild wird nicht angezeigt.. habe mir auch mal erlaubt eine mail zu schicken 
danke und gruss,
uli |
fudo
31.01.2006, 17:23
|
zahlencode wird nicht angezeigt |
sodele, habe es hinbekommen..
irgendwie lag das problem an der funktion zum ändern des bilders.. wo genau, keine ahnung ... 
habe einfach eine andere captcha-funktion eingebunden, es klappt. sollte noch jemand dasproblem haben:
diesen code-schnippsel aus der forbid.php entfernen oder auskommentieren:
if ($_GET['action'] == "gen" {
mt_srand((double)microtime()*1000000);
$text = mt_rand(10000, 99999);
setCaptchaId($text);
header('Content-type: image/png');
$img = ImageCreateFromPNG('captcha.png');
$color = ImageColorAllocate($img, 0, 0, 0);
$ttf = 'arial.ttf';
$ttfsize = 20;
$angle = rand(0,5);
$text_x = rand(5,50);
$text_y = 30;
imagettftext($img, $ttfsize, $angle, $text_x, $text_y, $color, $ttf, $text);
imagepng($img);
imagedestroy($img);
}
dafür dann diesen code einfügen:
function ts_gfx($ts_random) {
$datekey = date("F j" ;
$rcode = hexdec(md5($_SERVER[HTTP_USER_AGENT] . $sitekey . $ts_random . $datekey));
$code = substr($rcode, 2, 6);
setCaptchaId($code);
$circles=5;
$lines=1;
$width=100;
$height=40;
$font=5;
$fontwidth = ImageFontWidth($font) * strlen($string);
$fontheight = ImageFontHeight($font);
$im = @imagecreate ($width,$height);
$background_color = imagecolorallocate ($im, 10, 102, 174);
$text_color = imagecolorallocate ($im, rand(200,255),rand(200,255),rand(200,255)); // Random Text
$r=0.01;$g=0.51;$b=0.87;
for ($i=1;$i<=$circles;$i++) {
$value=rand(200, 255);
$randomcolor = imagecolorallocate ($im , $value*$r, $value*$g,$value*$b);
imagefilledellipse($im,rand(0,$width-10),rand(0,$height-3),
rand(20,70),rand(20,70),$randomcolor);
}
imagerectangle($im,0,0,$width-1,$height-1,$text_color);
imagestring ($im, $font, 22, 12,$code,$text_color);
for ($i=0;$i<$lines;$i++) {
$y=rand(14, 24);
$randomcolor=imagecolorallocate($im, 0,0, rand(100, 255));
imageline($im, 0, $y, $width, $y, $randomcolor);
}
header ("Content-type: image/jpeg" ;
imagejpeg ($im,'',80);
ImageDestroy($im);
die();
}
$ts_random=rand();
$pos= strpos($_SERVER['REQUEST_URI'], '?');
$basename = basename(substr($_SERVER['REQUEST_URI'], 0, $pos));
if($basename==basename(__FILE__))
ts_gfx($_GET['ts_random']);
und noch diese zeile:
<img src="<?php echo "http://" . $_SERVER['HTTP_HOST'] ."/" . $trap_path; ?>forbid.php?action=gen" />
gegen diese ersetzen:
<img src="<?php echo "http://" . $_SERVER['HTTP_HOST'] ."/" . $trap_path; ?>forbid.php?ts_random=<?php print $ts_random; ?>" />
und es funzt...
gruss, uli
p.s. klasse sache deine spider-trap!!! |
JR-EWING
31.01.2006, 18:55
|
zahlencode wird nicht angezeigt |
Hallo Uli,
ich habe dir gerade geschrieben. So ähnlich baue ich das auch in die 0.93 ein.
Habe gestern auch was dazu geschrieben: http://www.spider-trap.de/blog/
Gruß Thomas Suche noch Programmierer für das Spider Trap Team, die mir helfen die Software weiterzuentwickeln.
|
gove
28.02.2006, 00:03
|
zahlencode wird nicht angezeigt |
Hallo,
diejenigen bei denen nur der Zahlencode fehlt, sollten folgendes machen:
In Zeile 27 der forbid.php muss statt
$ttf = 'arial.ttf';
das stehen:
$ttf = './arial.ttf';
(Also einfach nur ./ davor schreiben.)
Bei mir hats jedenfalls funktioniert.
Gruß Gove |
JR-EWING
03.03.2006, 04:32
|
zahlencode wird nicht angezeigt |
danke für den Tipp. Suche noch Programmierer für das Spider Trap Team, die mir helfen die Software weiterzuentwickeln.
|
Quix0r

Uetersen, 09.03.2006, 20:43 (editiert von Quix0r, 09.03.2006, 20:53)
|
zahlencode wird nicht angezeigt |
Erst mal ein DICKES Lob von mir fuer dieses Script! 
Dann habe ich gleich fudo's "Patch" eingearbeitet und einige Dinge aufgearbeitet:
- Fudo hat wohl den SiteKey vergessen??? Oder habe ich da was verpasst?
- Habe $sitekey und $datekey in gleichnamige Konstanten verwandelt
- .. und diese nach settings.php verschoben
- Habe weitere Daten, wie SERVER_SOFTWARE, HTTP_ACCEPT_CHARSET und das Datum der letzten Aenderung von settings.php mit in die Codegenerierung eingebunden. Letzteres wird fuer den Hacker sehr schwert herauszubekommen... 
- Zudem solltet ihr den SiteKey selber etwas randomizen (wilde Zeichen eingeben oder Zufallsgeneerator laufen lassen und mit ein paar - und / einbinden)
- Die generierte Zahl (ist immer noch erneut produzierbar!) wird nun an einer zufaelligen Position im Bild ausgegeben (sollte aber nicht rechts/unten rauslaufen)
- Die Linien werden mit einem Mindestabstand von 2 Pixel ueber der Zahl ausgegeben.
- Eine Maximalanzahl von Linien wird anhand der Schrifthoehe und Mindestabstand berechnet und mit der ausgewaehlten Anzahl verknuepft
- Die Linienanzahl kann nun auch per Zufall bestimmt werden (settings.php!)
- Die temporaere Datei wird in spider-trap/tmp/ angelegt (weil ich hier keine Zugriffsrechte auf /tmp/ hatte); bitte hier UNBEDINGT CHMOD 777 auf tmp einstellen!
Das war's eigentlich schon. Das Patch habe ich dem Thomas mal zugemailt... 
Quix0r
// EDIT: //
Zugriff nur mit mod_rewrite per .htaccess auf blacklist.txt und whitelist.txt verhindert -> Sofortige Sperrung der IP. 
// EDIT2:@Admin //
In der spider-trap/index.php habe ich die Weiterleitung rauskommentiert, da ich Debuggen musste. Bitte wieder die Kommentare rausnehmen...  |
JR-EWING
09.03.2006, 21:02
|
zahlencode wird nicht angezeigt |
» Erst mal ein DICKES Lob von mir fuer dieses Script! 
Wenn ich das so lese muss ich mich schon bei dir bedanken.  Suche noch Programmierer für das Spider Trap Team, die mir helfen die Software weiterzuentwickeln.
|
Quix0r

Uetersen, 09.03.2006, 21:09
|
zahlencode wird nicht angezeigt |
» » Erst mal ein DICKES Lob von mir fuer dieses Script! 
»
» Wenn ich das so lese muss ich mich schon bei dir bedanken. 
Die Spambots nerven hier echt rum Dabei will ich deren Meds gar nicht haben...  |
charokee
25.07.2006, 19:00 (editiert von charokee, 25.07.2006, 19:22)
|
zahlencode wird nicht angezeigt |
Das Captcha zur Freischaltung wird nicht angezeigt bei mir.
Wenn ich versuche es mit spider-trap/forbid.php?action=gen zu generieren bekomme ich folgende Meldung:
Die Grafik ... kann nicht angezeigt werden weil sie einen Fehler enthält.
Und wenn ich den Code verwende ein paar Beiträge weiter oben bekomme ich einen Parse Error.
Weiss jemand Rat?
- edit -
Ich habe den Fehler schon selber gefunden!
In der Datei forbid.php musste es statt
$img = ImageCreateFromPNG('captcha.png');
$color = ImageColorAllocate($img, 0, 0, 0);
$ttf = 'arial.ttf';
so heissen:
$img = ImageCreateFromPNG('./captcha.png');
$color = ImageColorAllocate($img, 0, 0, 0);
$ttf = './arial.ttf';
Danach ging es einwandfrei.
Vielen Dank für die Spinnen-Falle! |