Всем ку.Есть вопрос:
Как прикрутить каптчу при заходе в лк?
Как прикрутить каптчу при заходе в лк?
if ($config["site"]["captcha"]["allow"] == 1)
{
$tpl->template = '<script type="text/javascript">//<![CDATA[
function reload () {
var rndval = new Date().getTime();
document.getElementById(\'sw-captcha\').innerHTML = \'<img src="inc/captcha/antibot.php?rndval=\' + rndval + \'" border="0"><br /><a onclick="reload(); return false;" href="#">Обновить код</a>\';
};
//]]></script>' . $tpl->template;
$tpl->set_var('[captcha]', "");
$tpl->set_var('[/captcha]', "");
$tpl->set_var('{l2sec_code}', "<span id=\"sw-captcha\"><img src=\"/inc/captcha/antibot.php\" alt=\"Код безопасности\" border=\"0\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">Обновить код</a></span>");
}
else
{
$tpl->set_var('{l2sec_code}', "");
$tpl->set_block("'\\[captcha\\](.*?)\\[/captcha\\]'si", "");
}
if (isset($_POST["sw_do_login"]))
{
if ($config["site"]["captcha"]["allow"] == 1)
{
$_l2code_post = $_POST["l2sec_code"];
$_l2code_sess = $_SESSION["sw_captcha"];
}
else
{
$_l2code_post = 1;
$_l2code_sess = 1;
}
$error_msg = "Заполните все поля";
}
elseif (!$_l2code_sess or $_l2code_post != $_l2code_sess)
{
$error_msg = "<div class='error'>Обнаружены следующие ошибки:<br>Введенный Вами код не совпадает с указанным на картинке!</div>";
}
if ($config["site"]["captcha"]["allow"] == 1)
{
$tpl->template = '<script type="text/javascript">//<![CDATA[
function reload () {
var rndval = new Date().getTime();
document.getElementById(\'sw-captcha\').innerHTML = \'<img src="inc/captcha/antibot.php?rndval=\' + rndval + \'" border="0"><br /><a onclick="reload(); return false;" href="#">Обновить код</a>\';
};
//]]></script>' . $tpl->template;
$tpl->set_var('[captcha]', "");
$tpl->set_var('[/captcha]', "");
$tpl->set_var('{l2sec_code}', "<span id=\"sw-captcha\"><img src=\"/inc/captcha/antibot.php\" alt=\"Код безопасности\" border=\"0\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">Обновить код</a></span>");
}
else
{
$tpl->set_var('{l2sec_code}', "");
$tpl->set_block("'\\[captcha\\](.*?)\\[/captcha\\]'si", "");
}
Так, немного ошибся. Чтобы при обновлении не уходило вверх, в файле profile.php строку $tpl->get_template("profile.tpl"); поднять выше кода:Akimm007 пишет:Большое спасибо!
Вот только есть баг.
При нажатии обновить , страница просто переходит вверх без обновления.
Так же при регистрации , при нажатии обновить - обновляется не та каптча которая в реги , а которая у лк!
if ($config["site"]["captcha"]["allow"] == 1)
{
$tpl->template = '<script type="text/javascript">//<![CDATA[
function reload () {
var rndval = new Date().getTime();
document.getElementById(\'sw-captcha\').innerHTML = \'<img src="inc/captcha/antibot.php?rndval=\' + rndval + \'" border="0"><br /><a onclick="reload(); return false;" href="#">Обновить код</a>\';
};
//]]></script>' . $tpl->template;
$tpl->set_var('[captcha]', "");
$tpl->set_var('[/captcha]', "");
$tpl->set_var('{l2sec_code}', "<span id=\"sw-captcha\"><img src=\"/inc/captcha/antibot.php\" alt=\"Код безопасности\" border=\"0\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">Обновить код</a></span>");
}
else
{
$tpl->set_var('{l2sec_code}', "");
$tpl->set_block("'\\[captcha\\](.*?)\\[/captcha\\]'si", "");
}
Сделал ровно так как написано, а в ЛК капча не появилась, что пропустил?invisible13 пишет:В папке Engine в файле profile.php выше строки $tpl->get_template("profile.tpl"); вставить:В файле index.php после:
- Код:
if ($config["site"]["captcha"]["allow"] == 1)
{
$tpl->template = '<script type="text/javascript">//<![CDATA[
function reload () {
var rndval = new Date().getTime();
document.getElementById(\'sw-captcha\').innerHTML = \'<img src="inc/captcha/antibot.php?rndval=\' + rndval + \'" border="0"><br /><a onclick="reload(); return false;" href="#">Обновить код</a>\';
};
//]]></script>' . $tpl->template;
$tpl->set_var('[captcha]', "");
$tpl->set_var('[/captcha]', "");
$tpl->set_var('{l2sec_code}', "<span id=\"sw-captcha\"><img src=\"/inc/captcha/antibot.php\" alt=\"Код безопасности\" border=\"0\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">Обновить код</a></span>");
}
else
{
$tpl->set_var('{l2sec_code}', "");
$tpl->set_block("'\\[captcha\\](.*?)\\[/captcha\\]'si", "");
}вставить:
- Код:
if (isset($_POST["sw_do_login"]))
{после:
- Код:
if ($config["site"]["captcha"]["allow"] == 1)
{
$_l2code_post = $_POST["l2sec_code"];
$_l2code_sess = $_SESSION["sw_captcha"];
}
else
{
$_l2code_post = 1;
$_l2code_sess = 1;
}вставить:
- Код:
$error_msg = "Заполните все поля";
}В папке inc/module в файл login.php выше строки $tpl->get_template("login_panel.tpl"); вставить:
- Код:
elseif (!$_l2code_sess or $_l2code_post != $_l2code_sess)
{
$error_msg = "<div class='error'>Обнаружены следующие ошибки:<br>Введенный Вами код не совпадает с указанным на картинке!</div>";
}Готово! капча будет.
- Код:
if ($config["site"]["captcha"]["allow"] == 1)
{
$tpl->template = '<script type="text/javascript">//<![CDATA[
function reload () {
var rndval = new Date().getTime();
document.getElementById(\'sw-captcha\').innerHTML = \'<img src="inc/captcha/antibot.php?rndval=\' + rndval + \'" border="0"><br /><a onclick="reload(); return false;" href="#">Обновить код</a>\';
};
//]]></script>' . $tpl->template;
$tpl->set_var('[captcha]', "");
$tpl->set_var('[/captcha]', "");
$tpl->set_var('{l2sec_code}', "<span id=\"sw-captcha\"><img src=\"/inc/captcha/antibot.php\" alt=\"Код безопасности\" border=\"0\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">Обновить код</a></span>");
}
else
{
$tpl->set_var('{l2sec_code}', "");
$tpl->set_block("'\\[captcha\\](.*?)\\[/captcha\\]'si", "");
}
Могу сказать одно - к чему привык из того и делай. Я привык к dle и хали для меня собственно проще. Кто привык к стресу тот и из стреса выжмет 110% производительности
else
{
$tpl->get_template("profile.tpl");
if ($config["site"]["captcha"]["allow"] == 1)
{
$tpl->template = '<script type="text/javascript">//<![CDATA[
function reload () {
var rndval = new Date().getTime();
document.getElementById(\'sw-captcha\').innerHTML = \'<img src="inc/captcha/antibot.php?rndval=\' + rndval + \'" border="0"><br /><a onclick="reload(); return false;" href="#">Обновить код</a>\';
};
//]]></script>' . $tpl->template;
$tpl->set_var('[captcha]', "");
$tpl->set_var('[/captcha]', "");
$tpl->set_var('{l2sec_code}', "<span id=\"sw-captcha\"><img src=\"/inc/captcha/antibot.php\" alt=\"Код безопасности\" border=\"0\" /><br /><a onclick=\"reload(); return false;\" href=\"#\">Обновить код</a></span>");
}