eurogard Posted March 1, 2011 Author Report Share Posted March 1, 2011 Hallo, ich habe auch ein Prob. mit dem Captcha... Habe schon die link.class Datei ersetzt und kein Plugin von BUI... Wenn ich die Captcha.php direkt über den Browser aufrufe, erscheint kein Bild. Beim Aufrufen im Shop (Passwort vergessen?) kommt keine Fehlermeldung, sondern einfach eine leere Zeile und hinten steht dann das Wort "captcha".. Ich habe lange im Forum gesucht, doch dieses wurde bisher noch nicht beschrieben (??) Was kann das sein ?? Ich hoffe auf Eure Hilfe !! lg, Torsten Bei uns lag es am FTP Programm !!! Einfach nochmal die benötigten fonts z.B. mit Fillezilla hochladen. Link to comment Share on other sites More sharing options...
torstenv Posted March 13, 2011 Report Share Posted March 13, 2011 Hallo, am ftp liegts auch nicht, benutze immer den FileZilla... Ich könnte heulen, brauch bitte hilfe bei diesem problem !! lg, Torsten Link to comment Share on other sites More sharing options...
asatdu Posted March 14, 2011 Report Share Posted March 14, 2011 Filezilla hatte bei mir in den letzten Versionen immer die Angewohnheit Dateien zu überspringen und diese unter "Fehlgeschlagene Übertragungen"(unten mittig) zu listen. Liegts evtl. da ran? Link to comment Share on other sites More sharing options...
torstenv Posted March 14, 2011 Report Share Posted March 14, 2011 Hallo, ich habe es nochmal mit einem anderen FTP-Prog. versucht, alles hochgeladen, aber leider ohne erfolg .... HILFE !! Link to comment Share on other sites More sharing options...
2Break Posted March 14, 2011 Report Share Posted March 14, 2011 Bezueglich meinem Post Installiere ich veyton4.0.13 lokal auf xampp-1.7.4 (win) mit Port 8888, dann funktioniert im Kontaktformular das Captcha-Bild nicht.habe ich eine Loesung gefunden, die etwas verwundert. Eine Bug-Korrektur durchgefuehrt (fuer multiple databases) in der adodb_mysql -Treiberdatei xtFramework/library/adodb/drivers/adodb-mysql.inc.php ist in meinem Fall verantwortlich dafuer dass das Captcha-Bild (ohne Fehlermeldung) verschwindet. // returns true or false function SelectDB($dbName) { $this->database = $dbName; $this->databaseName = $dbName; # obsolete, retained for compat with older adodb versions if ($this->_connectionID) { //return @mysql_select_db($dbName,$this->_connectionID); // mzanier, xt:Commerce GmbH - multiple databases mysql_select_db($dbName,$this->_connectionID); $this->__db[$this->_connectionID] = $dbName; return $this->_connectionID; // mzanier end } else return false; }[/PHP]Korrigiere ich die Korrektur zum Orginal zurueck funktioniert Captcha bei xampp-1.7.4 (Windows) problemlos. Link to comment Share on other sites More sharing options...
sirius Posted April 5, 2011 Report Share Posted April 5, 2011 Mein Captcha hat auch nicht funktioniert. Statt den Sicherheitscode stand "Captcha" nur da. Bei mir hat folgendes Funktioniert im Stammverzeichnis die Captcha.php datei aufrufen und Editieren include ('xtCore/main_slim.php'); include _SRV_WEBROOT.'/xtFramework/library/captcha/php-captcha.inc.php'; $aFonts = array('media/fonts/VeraBd.ttf', 'media/fonts/VeraIt.ttf', 'media/fonts/Vera.ttf'); $oVisualCaptcha = new PhpCaptcha($aFonts, 200, 60); $oVisualCaptcha->Create(); ?>[/PHP] zu [PHP]include ('xtCore/main.php'); include _SRV_WEBROOT.'/xtFramework/library/captcha/php-captcha.inc.php'; $aFonts = array('media/fonts/VeraBd.ttf', 'media/fonts/VeraIt.ttf', 'media/fonts/Vera.ttf'); $oVisualCaptcha = new PhpCaptcha($aFonts, 200, 60); $oVisualCaptcha->Create(); ?>[/PHP] Problem lag an der xtCore/main_slim.php => zu xtCore/main.php Vielleicht hilft es auch anderen Link to comment Share on other sites More sharing options...
torstenv Posted April 5, 2011 Report Share Posted April 5, 2011 Hallo sirius, vielen dank für deinen tip, hat leider auch nicht geholfen... Hier nochmal meine captcha.php: ----------------------------------------- include ('xtCore/slim_main.php'); include _SRV_WEBROOT.'/xtFramework/library/captcha/php-captcha.inc.php'; $aFonts = array('media/fonts/VeraBd.ttf', 'media/fonts/VeraIt.ttf', 'media/fonts/Vera.ttf'); $oVisualCaptcha = new PhpCaptcha($aFonts, 200, 60); $oVisualCaptcha->Create(); ?> ------------------------------------------ und meine php-captcha.ink.php: ------------------------------------------ /************************ Documentation ************************/ /* Documentation is available at Visual and Audio PHP CAPTCHA Generation Class - Ed Eliot */ /************************ Default Options **********************/ // start a PHP session - this class uses sessions to store the generated // code. Comment out if you are calling already from your application // session_start(); // class defaults - change to effect globally define('CAPTCHA_SESSION_ID', 'php_captcha'); define('CAPTCHA_WIDTH', 200); // max 500 define('CAPTCHA_HEIGHT', 50); // max 200 define('CAPTCHA_NUM_CHARS', 5); define('CAPTCHA_NUM_LINES', 70); define('CAPTCHA_CHAR_SHADOW', false); define('CAPTCHA_OWNER_TEXT', ''); define('CAPTCHA_CHAR_SET', ''); // defaults to A-Z define('CAPTCHA_CASE_INSENSITIVE', true); define('CAPTCHA_BACKGROUND_IMAGES', ''); define('CAPTCHA_MIN_FONT_SIZE', 16); define('CAPTCHA_MAX_FONT_SIZE', 25); define('CAPTCHA_USE_COLOUR', false); define('CAPTCHA_FILE_TYPE', 'jpeg'); define('CAPTCHA_FLITE_PATH', '/usr/bin/flite'); define('CAPTCHA_AUDIO_PATH', '/tmp/'); // must be writeable by PHP process /************************ End Default Options **********************/ // don't edit below this line (unless you want to change the class!) class PhpCaptcha { var $oImage; var $aFonts; var $iWidth; var $iHeight; var $iNumChars; var $iNumLines; var $iSpacing; var $bCharShadow; var $sOwnerText; var $aCharSet; var $bCaseInsensitive; var $vBackgroundImages; var $iMinFontSize; var $iMaxFontSize; var $bUseColour; var $sFileType; var $sCode = ''; function PhpCaptcha( $aFonts, // array of TrueType fonts to use - specify full path $iWidth = CAPTCHA_WIDTH, // width of image $iHeight = CAPTCHA_HEIGHT // height of image ) { // get parameters $this->aFonts = $aFonts; $this->SetNumChars(CAPTCHA_NUM_CHARS); $this->SetNumLines(CAPTCHA_NUM_LINES); $this->DisplayShadow(CAPTCHA_CHAR_SHADOW); $this->SetOwnerText(CAPTCHA_OWNER_TEXT); $this->SetCharSet(CAPTCHA_CHAR_SET); $this->CaseInsensitive(CAPTCHA_CASE_INSENSITIVE); $this->SetBackgroundImages(CAPTCHA_BACKGROUND_IMAGES); $this->SetMinFontSize(CAPTCHA_MIN_FONT_SIZE); $this->SetMaxFontSize(CAPTCHA_MAX_FONT_SIZE); $this->UseColour(CAPTCHA_USE_COLOUR); $this->SetFileType(CAPTCHA_FILE_TYPE); $this->SetWidth($iWidth); $this->SetHeight($iHeight); } function CalculateSpacing() { $this->iSpacing = (int)($this->iWidth / $this->iNumChars); } function SetWidth($iWidth) { $this->iWidth = $iWidth; if ($this->iWidth > 500) $this->iWidth = 500; // to prevent perfomance impact $this->CalculateSpacing(); } function SetHeight($iHeight) { $this->iHeight = $iHeight; if ($this->iHeight > 200) $this->iHeight = 200; // to prevent performance impact } function SetNumChars($iNumChars) { $this->iNumChars = $iNumChars; $this->CalculateSpacing(); } function SetNumLines($iNumLines) { $this->iNumLines = $iNumLines; } function DisplayShadow($bCharShadow) { $this->bCharShadow = $bCharShadow; } function SetOwnerText($sOwnerText) { $this->sOwnerText = $sOwnerText; } function SetCharSet($vCharSet) { // check for input type if (is_array($vCharSet)) { $this->aCharSet = $vCharSet; } else { if ($vCharSet != '') { // split items on commas $aCharSet = explode(',', $vCharSet); // initialise array $this->aCharSet = array(); // loop through items foreach ($aCharSet as $sCurrentItem) { // a range should have 3 characters, otherwise is normal character if (strlen($sCurrentItem) == 3) { // split on range character $aRange = explode('-', $sCurrentItem); // check for valid range if (count($aRange) == 2 && $aRange[0] < $aRange[1]) { // create array of characters from range $aRange = range($aRange[0], $aRange[1]); // add to charset array $this->aCharSet = array_merge($this->aCharSet, $aRange); } } else { $this->aCharSet[] = $sCurrentItem; } } } } } function CaseInsensitive($bCaseInsensitive) { $this->bCaseInsensitive = $bCaseInsensitive; } function SetBackgroundImages($vBackgroundImages) { $this->vBackgroundImages = $vBackgroundImages; } function SetMinFontSize($iMinFontSize) { $this->iMinFontSize = $iMinFontSize; } function SetMaxFontSize($iMaxFontSize) { $this->iMaxFontSize = $iMaxFontSize; } function UseColour($bUseColour) { $this->bUseColour = $bUseColour; } function SetFileType($sFileType) { // check for valid file type if (in_array($sFileType, array('gif', 'png', 'jpeg'))) { $this->sFileType = $sFileType; } else { $this->sFileType = 'jpeg'; } } function DrawLines() { for ($i = 0; $i < $this->iNumLines; $i++) { // allocate colour if ($this->bUseColour) { $iLineColour = imagecolorallocate($this->oImage, rand(100, 250), rand(100, 250), rand(100, 250)); } else { $iRandColour = rand(100, 250); $iLineColour = imagecolorallocate($this->oImage, $iRandColour, $iRandColour, $iRandColour); } // draw line imageline($this->oImage, rand(0, $this->iWidth), rand(0, $this->iHeight), rand(0, $this->iWidth), rand(0, $this->iHeight), $iLineColour); } } function DrawOwnerText() { // allocate owner text colour $iBlack = imagecolorallocate($this->oImage, 0, 0, 0); // get height of selected font $iOwnerTextHeight = imagefontheight(2); // calculate overall height $iLineHeight = $this->iHeight - $iOwnerTextHeight - 4; // draw line above text to separate from CAPTCHA imageline($this->oImage, 0, $iLineHeight, $this->iWidth, $iLineHeight, $iBlack); // write owner text imagestring($this->oImage, 2, 3, $this->iHeight - $iOwnerTextHeight - 3, $this->sOwnerText, $iBlack); // reduce available height for drawing CAPTCHA $this->iHeight = $this->iHeight - $iOwnerTextHeight - 5; } function GenerateCode() { // reset code $this->sCode = ''; // loop through and generate the code letter by letter for ($i = 0; $i < $this->iNumChars; $i++) { if (count($this->aCharSet) > 0) { // select random character and add to code string $this->sCode .= $this->aCharSet[array_rand($this->aCharSet)]; } else { // select random character and add to code string $this->sCode .= chr(rand(65, 90)); } } // save code in session variable if ($this->bCaseInsensitive) { $_SESSION[CAPTCHA_SESSION_ID] = strtoupper($this->sCode); } else { $_SESSION[CAPTCHA_SESSION_ID] = $this->sCode; } } function DrawCharacters() { // loop through and write out selected number of characters for ($i = 0; $i < strlen($this->sCode); $i++) { // select random font $sCurrentFont = $this->aFonts[array_rand($this->aFonts)]; // select random colour if ($this->bUseColour) { $iTextColour = imagecolorallocate($this->oImage, rand(0, 100), rand(0, 100), rand(0, 100)); if ($this->bCharShadow) { // shadow colour $iShadowColour = imagecolorallocate($this->oImage, rand(0, 100), rand(0, 100), rand(0, 100)); } } else { $iRandColour = rand(0, 100); $iTextColour = imagecolorallocate($this->oImage, $iRandColour, $iRandColour, $iRandColour); if ($this->bCharShadow) { // shadow colour $iRandColour = rand(0, 100); $iShadowColour = imagecolorallocate($this->oImage, $iRandColour, $iRandColour, $iRandColour); } } // select random font size $iFontSize = rand($this->iMinFontSize, $this->iMaxFontSize); // select random angle $iAngle = rand(-30, 30); // get dimensions of character in selected font and text size $aCharDetails = imageftbbox($iFontSize, $iAngle, $sCurrentFont, $this->sCode[$i], array()); // calculate character starting coordinates $iX = $this->iSpacing / 4 + $i * $this->iSpacing; $iCharHeight = $aCharDetails[2] - $aCharDetails[5]; $iY = $this->iHeight / 2 + $iCharHeight / 4; // write text to image imagefttext($this->oImage, $iFontSize, $iAngle, $iX, $iY, $iTextColour, $sCurrentFont, $this->sCode[$i], array()); if ($this->bCharShadow) { $iOffsetAngle = rand(-30, 30); $iRandOffsetX = rand(-5, 5); $iRandOffsetY = rand(-5, 5); imagefttext($this->oImage, $iFontSize, $iOffsetAngle, $iX + $iRandOffsetX, $iY + $iRandOffsetY, $iShadowColour, $sCurrentFont, $this->sCode[$i], array()); } } } function WriteFile($sFilename) { if ($sFilename == '') { // tell browser that data is jpeg header("Content-type: image/$this->sFileType"); } switch ($this->sFileType) { case 'gif': $sFilename != '' ? imagegif($this->oImage, $sFilename) : imagegif($this->oImage); break; case 'png': $sFilename != '' ? imagepng($this->oImage, $sFilename) : imagepng($this->oImage); break; default: $sFilename != '' ? imagejpeg($this->oImage, $sFilename) : imagejpeg($this->oImage); } } function Create($sFilename = '') { // check for required gd functions if (!function_exists('imagecreate') || !function_exists("image$this->sFileType") || ($this->vBackgroundImages != '' && !function_exists('imagecreatetruecolor'))) { return false; } // get background image if specified and copy to CAPTCHA if (is_array($this->vBackgroundImages) || $this->vBackgroundImages != '') { // create new image $this->oImage = imagecreatetruecolor($this->iWidth, $this->iHeight); // create background image if (is_array($this->vBackgroundImages)) { $iRandImage = array_rand($this->vBackgroundImages); $oBackgroundImage = imagecreatefromjpeg($this->vBackgroundImages[$iRandImage]); } else { $oBackgroundImage = imagecreatefromjpeg($this->vBackgroundImages); } // copy background image imagecopy($this->oImage, $oBackgroundImage, 0, 0, 0, 0, $this->iWidth, $this->iHeight); // free memory used to create background image imagedestroy($oBackgroundImage); } else { // create new image $this->oImage = imagecreate($this->iWidth, $this->iHeight); } // allocate white background colour imagecolorallocate($this->oImage, 255, 255, 255); // check for owner text if ($this->sOwnerText != '') { $this->DrawOwnerText(); } // check for background image before drawing lines if (!is_array($this->vBackgroundImages) && $this->vBackgroundImages == '') { $this->DrawLines(); } $this->GenerateCode(); $this->DrawCharacters(); // write out image to file or browser $this->WriteFile($sFilename); // free memory used in creating image imagedestroy($this->oImage); return true; } // call this method statically function Validate($sUserCode, $bCaseInsensitive = true) { if ($bCaseInsensitive) { $sUserCode = strtoupper($sUserCode); } if (!empty($_SESSION[CAPTCHA_SESSION_ID]) && $sUserCode == $_SESSION[CAPTCHA_SESSION_ID]) { // clear to prevent re-use unset($_SESSION[CAPTCHA_SESSION_ID]); return true; } return false; } } // this class will only work correctly if a visual CAPTCHA has been created first using PhpCaptcha class AudioPhpCaptcha { var $sFlitePath; var $sAudioPath; var $sCode; function AudioPhpCaptcha( $sFlitePath = CAPTCHA_FLITE_PATH, // path to flite binary $sAudioPath = CAPTCHA_AUDIO_PATH // the location to temporarily store the generated audio CAPTCHA ) { $this->SetFlitePath($sFlitePath); $this->SetAudioPath($sAudioPath); // retrieve code if already set by previous instance of visual PhpCaptcha if (isset($_SESSION[CAPTCHA_SESSION_ID])) { $this->sCode = $_SESSION[CAPTCHA_SESSION_ID]; } } function SetFlitePath($sFlitePath) { $this->sFlitePath = $sFlitePath; } function SetAudioPath($sAudioPath) { $this->sAudioPath = $sAudioPath; } function Mask($sText) { $iLength = strlen($sText); // loop through characters in code and format $sFormattedText = ''; for ($i = 0; $i < $iLength; $i++) { // comma separate all but first and last characters if ($i > 0 && $i < $iLength - 1) { $sFormattedText .= ', '; } elseif ($i == $iLength - 1) { // precede last character with "and" $sFormattedText .= ' and '; } $sFormattedText .= $sText[$i]; } $aPhrases = array( "The %1\$s characters are as follows: %2\$s", "%2\$s, are the %1\$s letters", "Here are the %1\$s characters: %2\$s", "%1\$s characters are: %2\$s", "%1\$s letters: %2\$s" ); $iPhrase = array_rand($aPhrases); return sprintf($aPhrases[$iPhrase], $iLength, $sFormattedText); } function Create() { $sText = $this->Mask($this->sCode); $sFile = md5($this->sCode.time()); // create file with flite shell_exec("$this->sFlitePath -t \"$sText\" -o $this->sAudioPath$sFile.wav"); // set headers header('Content-type: audio/x-wav'); header("Content-Disposition: attachment;filename=$sFile.wav"); // output to browser echo file_get_contents("$this->sAudioPath$sFile.wav"); // delete temporary file @unlink("$this->sAudioPath$sFile.wav"); } } // example sub class class PhpCaptchaColour extends PhpCaptcha { function PhpCaptchaColour($aFonts, $iWidth = CAPTCHA_WIDTH, $iHeight = CAPTCHA_HEIGHT) { // call parent constructor parent::PhpCaptcha($aFonts, $iWidth, $iHeight); // set options $this->UseColour(true); } } ?> ------------------------------------ Kann da mal bitte jemand drüberschauen, ob da ein fehler drin ist ??? Ich bekomme immer nur das wort "captcha" angezeigt :-((( lg, Torsten:( Link to comment Share on other sites More sharing options...
milganti Posted May 13, 2011 Report Share Posted May 13, 2011 Mein Captcha hat auch nicht funktioniert. Statt den Sicherheitscode stand "Captcha" nur da. Bei mir hat folgendes Funktioniert im Stammverzeichnis die Captcha.php datei aufrufen und Editieren Problem lag an der xtCore/main_slim.php => zu xtCore/main.php Vielleicht hilft es auch anderen Danke, du bist mein persönlicher Held des Tages Hatte das selbe problem, eben das abgeändert, läuft! Link to comment Share on other sites More sharing options...
torstenv Posted May 13, 2011 Report Share Posted May 13, 2011 schade, bei mir noch immer nicht :-)))) hab keine ahnung mehr, was ich noch machen soll... beim direkten aufruf der captcha.php erscheint oben links im browser nur ein leeres feld mit einem x .... hat keiner hier eine lösung für das problem ??? lg, Torsten Link to comment Share on other sites More sharing options...
LFSGB Posted June 1, 2011 Report Share Posted June 1, 2011 Hallo allerseits, wir benutzen seit Anfang an die Version 4.13 und der Sicherheitscode wurde stets angezeigt. Aus welchen Grund auch immer haben wir letzte Woche bemerkt, dass der Sicherheitscode im Kontaktformular sowie auch bei Passwort anfordern nicht mehr erscheint. Im IE Explorer (aktuelle Version) wird ein X angezeigt Im Mozilla Firefox (aktuelle Version) sieht man nicht mal ein X Da wir bereits mit dem Support gesprochen haben wo hier das Problem liegt wurde uns mitgeteilt, in den nächsten Wochen kommt die Version 4.14 wo dieses Problem nicht mehr auftauchen sollte. Leider können wir nicht einige Wochen darauf warten, da bei uns die Kunden sehr oft das Formular verwenden. Da wir bereits den Thread durchgelesen haben samt Lösungsvorschläge verändert sich bei uns nichts. Wir wären für jede einzelne Hilfe sehr dankbar. MFG Gerhard Link to comment Share on other sites More sharing options...
redrum666 Posted December 11, 2012 Report Share Posted December 11, 2012 Hallo, da auf meinen anderen Post niemand antwortet, versuche ich mein Glück hier: Folgendes Problem: Veyton 4.0.13 + Internet Explorer 9 Beim Passwort Reset werden die Sicherheitscodes / Capcha angezeigt, aber stets reklamiert mit "Sicherheitscode falsch! Bitte überprüfen Sie Ihre Eingabe." Die Eingabe ist aber 100% richtig. Bei Firefox oder IE8 etc. funktioniert es. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.