• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Captacha problem

Status
Für weitere Antworten geschlossen.
Und wenn es gar kein Bot ist?
Vielleicht verarscht dich jemand.
Würde ich auch sagen, weil diese Einträge nicht nach einem Bot aussehen...

Captcha als Uhr:
PHP:
<?php
header ("Content-type: image/png");
$im = @ImageCreate (101, 101)
      or die ("Kann keinen neuen GD-Bild-Stream erzeugen");
$background_color = ImageColorAllocate ($im, 255, 255,255);
$line_color = ImageColorAllocate ($im, 0, 0, 0);
imageellipse($im,50,50,100,100,$line_color);
for($i = 0;$i < 12;$i++)
{
   $linelen = 3;
   if($i==0 OR $i == 3 OR $i == 9 OR $i == 12)
   {
      $linelen = 5;
   }
   imageline($im,50 + cos(deg2rad($i*30 - 90))*50,50 + sin(deg2rad($i*30 - 90))*50,50 + cos(deg2rad($i*30 - 90))*(50-$linelen),50 + sin(deg2rad($i*30 - 90))*(50-$linelen),$line_color);
}
$h = rand(0,11);
$min = rand(0,11);
$min_zeiger = 40 + rand(-5,10);
imageline($im,50,50,50 + cos(deg2rad($min*30 - 90))*$min_zeiger,50 + sin(deg2rad($min*30 - 90))*$min_zeiger,$line_color);
$h_zeiger = 20 + rand(-5,10);
imageline($im,50,50,50 + cos(deg2rad($h*30 - 90))*$h_zeiger,50 + sin(deg2rad($h*30 - 90))*$h_zeiger,$line_color);

$stoerlines = rand(2,5);
for($i=0;$i < $stoerlines;$i++)
{
   if(rand(0,1))
   {
      $rand_grad1 = rand(0,360);
      $rand_grad2 = rand(0,360);
      imageline($im,50 + cos(deg2rad($rand_grad1 - 90))*50,50 + sin(deg2rad($rand_grad1 - 90))*50,50 + cos(deg2rad($rand_grad2 - 90))*50,50 + sin(deg2rad($rand_grad2 - 90))*50,$line_color);
   }
   else
   {
      imageline($im,rand(0,100),rand(0,100),rand(0,100),rand(0,100),$line_color);
   }
}

imageline($im,49,49,49,51,$line_color);
imageline($im,50,49,50,51,$line_color);
imageline($im,51,49,51,51,$line_color);
#$text_color = ImageColorAllocate ($im, 0, 0, 0);
#ImageString ($im, 1, 5, 5, $h.':'.$min*5, $text_color);
ImagePNG ($im);
?>
Gefunden im Captcha Forum
Viele Grüße,
Marlin
 
in dem Forum steht abba das der "Uhr-Captacha" fast genauso schlecht is wie der Text-Captach is?!

okey ich wieß nicht was ich falsch mach abba iwie klappts net -.-"
test.txt:
Code:
test
huhu
etc


PHP:
<?php

$tofind_text = file("test.txt");
$text = "Das ist nur ein test eintrag";
echo $text;

foreach($tofind_text as $element) {
echo $element."<br>";
     if(stristr(strtolower($text),strtolower($element)) == TRUE){

                 echo "Wort vorhanden<br>";
      }else{
        echo "Wort nicht vorhanden<br>";
      }
}

?>

Ausgabe:
Das ist nur huhu ein test eintrag test etctest
Wort nicht vorhanden
huhu
Wort nicht vorhanden
etc
Wort vorhanden

und noch ne frage: warum die funktion "strtolower" stristr unterscheidet doch eh nicht zwischen groß und klein schreibung???
 
Zuletzt bearbeitet:
es muss richtig so heissen (das zeilenende zeichen muss noch gefiltert werden):
PHP:
if(stristr(strtolower($text),strtolower(trim($element))) == TRUE)

mit gross klein stimmt, ich nutze das in meinem code noch anderweitig und habe mit copy-paste einfach mal rein kopiert (als ansatz).
 
okey danke jetzt klappt es endlich!!!

aber mich würde jetzt interessiern warum man das zeilenende Zeichen filtern???
 
Status
Für weitere Antworten geschlossen.

Neueste Beiträge

Zurück
Oben