Joomla 5.2.2 Security & Bugfix Release
Joomla 5.2.2 je nyní k dispozici. Jedná se o bezpečnostní vydání pro Joomla 5.x.
registrace uživatele v k2
11. říj 2018 21:39 - 11. říj 2018 21:39 #137221
při registrace uživatele s pomocí captcha v K2 mi to následně vypíše chybu Could not verify that you are not a robot.
Uživatel se nezaloží.
Captcha je nastavena správně a na jiných místech funguje OK
joomla 3.8.13. K2 2.9 stránka www.eshop-diochi.cz/cs/login/registrace (je to testovací, klidně si zkuste založit uživatele).
Samotná kontrola captcha je v /components/com_k2/helpers/utilities.php
a volání funkce je v /www/plugins/user/k2/k2.php
a zobrazení captcha je v /components/com_k2/templates/register.php
Já tam chybu najít nevidím, napadá vás něco?
Uživatel se nezaloží.
Captcha je nastavena správně a na jiných místech funguje OK
joomla 3.8.13. K2 2.9 stránka www.eshop-diochi.cz/cs/login/registrace (je to testovací, klidně si zkuste založit uživatele).
Samotná kontrola captcha je v /components/com_k2/helpers/utilities.php
Code:
public static function verifyRecaptcha()
{
$params = JComponentHelper::getParams('com_k2');
$vars = array();
$vars['secret'] = $params->get('recaptcha_private_key');
$vars['response'] = $_POST['g-recaptcha-response'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.google.com/recaptcha/api/siteverify');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($vars, '', '&'));
$result = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);
$response = json_decode($result);
if($result && $info['http_code'] == 200 && is_object($response) && isset($response->success) && $response->success == true)
{
return true;
}
else
{
return false;
}
}
a volání funkce je v /www/plugins/user/k2/k2.php
Code:
if($params->get('recaptchaV2'))
{
require_once JPATH_SITE.'/components/com_k2/helpers/utilities.php';
if (!K2HelperUtilities::verifyRecaptcha())
{
if (K2_JVERSION != '15')
{
$url = 'index.php?option=com_users&view=registration';
}
else
{
$url = 'index.php?option=com_user&view=register';
}
$application->enqueueMessage(JText::_('K2_COULD_NOT_VERIFY_THAT_YOU_ARE_NOT_A_ROBOT'), 'error');
$application->redirect($url);
}
}
else
a zobrazení captcha je v /components/com_k2/templates/register.php
Code:
<?php if($this->K2Params->get('recaptchaOnRegistration') && $this->K2Params->get('recaptcha_public_key')): ?>
<?php if(!$this->K2Params->get('recaptchaV2')): ?>
<label class="formRecaptcha"><?php echo JText::_('K2_ENTER_THE_TWO_WORDS_YOU_SEE_BELOW'); ?></label>
<?php endif; ?>
<div id="recaptcha" class="<?php echo $this->recaptchaClass; ?>"></div>
<?php endif; ?>
Já tam chybu najít nevidím, napadá vás něco?
11. říj 2018 21:59 #137223
Odpověď od Cony
Moderátor
Vycházím z předpokladu, že ReCaptcha v K2 funguje, pak jediné co mě napadá je podpora cUrl. Je na serveru podpora cUrl?
Druhá věc je správně zadaný PublicKey, "všude jinde" si to bere public key z nastavení pluginu, tady je samostatné nastavení.
Druhá věc je správně zadaný PublicKey, "všude jinde" si to bere public key z nastavení pluginu, tady je samostatné nastavení.
11. říj 2018 22:09 - 11. říj 2018 22:12 #137224
Odpověď od Ernst
Joomla Expert
Klíče jsou v pořádku , to jsem kontroloval a asi by se ani captcha nevypsala.
Je to na active24 a podpora cUrl tam je.
Je to na active24 a podpora cUrl tam je.
11. říj 2018 22:22 #137225
Odpověď od Cony
Moderátor
Tak pak bych zkusil debugger chudého programátora - var_dump
11. říj 2018 22:23 #137226
Odpověď od Ernst
Joomla Expert
ještě jsem si pro jistotu zapnul v k2 komentáře a tam captcha funguje.
Zapnul jsem jen v tomto jednom článku www.eshop-diochi.cz/cs/aktuality-a-zajim...prvni-pomoc-na-cesty
Zapnul jsem jen v tomto jednom článku www.eshop-diochi.cz/cs/aktuality-a-zajim...prvni-pomoc-na-cesty
11. říj 2018 22:26 #137227
Odpověď od Ernst
Joomla Expert
ano, Cony, také už se s tím smiřuji, ale moc se mi do toho nechce
zkouším, zda se s tím někdo nesetkal.
Navíc si myslím, že to dříve šlo, ale od té doby bylo dost upgrade a taky google mohl něco změnit
Ale působí to na mě jako obecná chyba v K2, nemá to možnost někdo zkusit na jiném webu?
zkouším, zda se s tím někdo nesetkal.
Navíc si myslím, že to dříve šlo, ale od té doby bylo dost upgrade a taky google mohl něco změnit
Ale působí to na mě jako obecná chyba v K2, nemá to možnost někdo zkusit na jiném webu?