Zobacz pełną wersję : JComments Captcha nie wyświetla się!
Witam! Mam Problem, zainstalowałem JComments i włączyłem captche. Przy próbie dodania komentarza, nie wyświetla się pole captchy do wpisywania kodu. Prosze o pomoc!
captcha w jcomments aktywujesz dla grup użytkowników / może dodając jesteś zalogowany na wysokich uprawnieniach (domyślnie captcha aktywne są chyba tylko dla niezarejestrowanych)
próbowałem na wszelkie mozliwe sposoby... będąc niezalogowanym, zalogowanym na admina czy na użytkownika etc. i dalej to samo.... nie działa...
Wie ktoś jak zrobić by to pole było wyswietlane??
Na jakim serwerze sprawdzasz komponent? Sprawdź czy masz włączone GD2 w PHP.
To jest serwer postawiony na terenie jednej z placówek publicznych. Co daje włączenie GD2?
W sktucie GD2 pozwala na edycje grafiki z poziomu php. W joomla! zobacz phpInfo czy jest GD2 zainstalowane.
To ja mam z goła inne pytanie: czy można zmienić typ captcha, obecny jest dość nieczytelny i niektórzy mogą mieć problemy z rozróżnieniem poszczególnych liter/cyfr ??
w ustawieniach formularza: aiContactSafe > profile > jakiś formularz, możesz poprawić czytelność przez dobór kolorów tła i "literek" lub wybrać inny zainstalowany silnik captcha
GD2 jest włączone, także nie mam pojęcia dlaczego zamiast obrazków wyświetla prostokąt w jakimś kolorze. Jakieś pomysły?
Jeżeli ktoś ma problem z wyświetlanym Captcha w joomla w dodatku jcoments, to w tym momencie udzielam pomocy.
Wystarczy przejść do "/public_html/twojadomena.pl/components/com_jcomments" i otworzyć plik "jcomments.captcha.php" następnie zmienić całość kodu zastępując go tym:
<?php
/**
* JComments - Joomla Comment System
*
* CAPTCHA - Automatic test to tell computers and humans apart
*
* @version 2.0
* @package JComments
* @filename jcomments.captcha.php
* @author Sergey M. Litvinov (smart@joomlatune.ru)
* @copyright (C) 2006-2009 by Sergey M. Litvinov (http://www.joomlatune.ru)
* @license GNU/GPL: http://www.gnu.org/copyleft/gpl.html
*
* If you fork this to create your own project,
* please make a reference to JComments someplace in your code
* and provide a link to http://www.joomlatune.ru
**/
// define directory separator short constant
if (!defined( 'DS' )) {
define( 'DS', DIRECTORY_SEPARATOR );
}
class JCommentsCaptcha
{
function check( $code )
{
@session_start();
$_SESSION['comments-captcha-attempts'] = intval($_SESSION['comments-captcha-attempts']) + 1;
return (($code != '') && ($code == $_SESSION['comments-captcha-code']));
}
function attempts()
{
return $_SESSION['comments-captcha-attempts'];
}
function destroy()
{
unset($_SESSION['comments-captcha-code']);
$_SESSION['comments-captcha-attempts'] = 0;
}
function image()
{
mt_srand((double)microtime()*1000000);
@session_start();
if(!isset($_SESSION['comments-captcha-attempts'])) {
$_SESSION['comments-captcha-attempts'] = 1;
} else {
$_SESSION['comments-captcha-attempts']++;
}
if (!isset($_SESSION['comments-captcha-code'])
|| ($_SESSION['comments-captcha-attempts'] >= 3)) {
$_SESSION['comments-captcha-code'] = mt_rand(10000, 99999);
$_SESSION['comments-captcha-attempts'] = 1;
}
$kcaptcha = JCOMMENTS_LIBRARIES . DS . 'kcaptcha' . DS . 'kcaptcha.php';
if (is_file($kcaptcha)) {
if (!class_exists('KCAPTCHA')) {
require_once($kcaptcha);
}
$captcha = new KCAPTCHA();
$_SESSION['comments-captcha-code'] = $captcha->getKeyString();
$_SESSION['comments-captcha-attempts'] = 1;
} else {
$im = ImageCreate(60, 18);
$fontcolor = ImageColorAllocate($im, 170, 170, 170);
$linecolor = ImageColorAllocate($im, 196, 196, 196);
$bordercolor = ImageColorAllocate($im, 200, 200, 200);
for($x=10; $x <= 100; $x+=10) {
ImageLine($im, $x, 0, $x, 50, $linecolor);
}
ImageLine($im, 0, 9, 100, 9, $linecolor);
ImageLine($im, 0, 0, 0, 50, $bordercolor);
ImageLine($im, 0, 0, 100, 0, $bordercolor);
ImageLine($im, 0, 17, 100, 17, $bordercolor);
ImageLine($im, 59, 0, 59, 17, $bordercolor);
ImageString($im, 5, 8, 1, $_SESSION['comments-captcha-code'], $fontcolor);
header('Content-Type: image/jpeg');
ImageJPEG($im,'',75);
ImageDestroy($im);
}
exit;
}
}
?>
@aktywny - Twój kod nie działa. Sprawdziłem - po podmianie captcha znika zupełnie.
Jaką wersję jcoments posiadasz bo w moim przypadku jest to JComments 2.2.0.2 i czy aby na pewno zrobiłeś to o czym pisałem wyżej poprawnie. I czy w jcomments włączyłeś funkcję Captcha dla użytkowników niezarejestrowanych cz też zarejestrowany to już zupełnie zależy od Ciebie. Ale warunek jest taki że musi być ta opcja aktywna.
Tutaj podaje link do JComments 2.2.0.2 http://www.joomlatune.com/downloads/jcomments/com_jcomments_v2.2.0.2.zip
Po kolei - nie mam najmniejszych problemów z captchą. Jest ona u mnie włączona dla niezalogowanych, a JCommentrs to najnowsza wersja 2.2.0.2. Wszystko chodzi od początku świetnie.
Ale dla sportu - chciałem sprawdzić, co też takiego Twój kod robi? I po podmianie plików - captcha u mnie znika. Z tego wyciągnąłem wniosek, który wyartykułowałem wyżej.
U mnie dotyczył problem z captche , na początku wszystko było w porządku. Ale po pewnym czasie przestał mi się wyświetlać kod antyspamowy, więc w ten sposób poradziłem sobie z tym problemem.
vBulletin® v4.2.5, Prawa przedruku © 2024 vBulletin Solutions, Inc. Wszystkie prawa zastrzeżone.
Tłumaczenie: Polskie Centrum Joomla!