Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security Joomla jQuery注册扩展+验证码_Security_Joomla_Registration - Fatal编程技术网

Security Joomla jQuery注册扩展+验证码

Security Joomla jQuery注册扩展+验证码,security,joomla,registration,Security,Joomla,Registration,我使用的是Joomla jQuery注册扩展,它没有任何类型的botcheck特性,我想添加它,但我不知道该怎么做。以下是扩展代码: <?php /** * @title jQuery Dropdown Registration Module * @version 1.7.2 * @package Joomla * @author http://www.minitek.gr (Ioannis Maragos) * @copyright

我使用的是Joomla jQuery注册扩展,它没有任何类型的botcheck特性,我想添加它,但我不知道该怎么做。以下是扩展代码:

    <?php
/**
 * @title         jQuery Dropdown Registration Module
 * @version   1.7.2
 * @package     Joomla
 * @author      http://www.minitek.gr (Ioannis Maragos)
 * @copyright   Copyright (C) 2011 Minitek. All rights reserved.
 * @license     GNU General Public License version 2 or later.
 */

// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
?>
<?php JHTML::_('behavior.formvalidation'); ?>       

<?php /*<link rel="stylesheet" href="modules/mod_dropdown_registration/css/style.css" type="text/css" /> */?>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js?ver=1.4.2" type="text/javascript"></script>
<script src="modules/mod_dropdown_registration/js/register.js" type="text/javascript"></script>


<?php
$user = JFactory::getUser();
$myID = $user->id;
if ($myID == 0) {
?>
<div id="registerContainer">
                <a href="#" id="registerButton"><span>Registracija</span><em></em></a>
                <div style="clear:both"></div>
<div id="registerBox"> 

<form id="member-registration" action="<?php echo JRoute::_('index.php?option=com_users'); ?>" method="post" class="form-validate">

<fieldset id="reg-body" class="userdata">       

<div class="reg-field">
    <label for="jform_name" id="jform_name-lbl">
            Ime i prezime:
    </label>
</div>      
<div style="float:left;">
    <input type="text" maxlength="50" class="inputbox required" value="" size="40" id="jform_name" name="jform[name]"/><br/>
    Molimo Vas da unesete stvarno ime i prezime!
</div>

<div style="clear:both;"></div>
<div style="height: 7px;"></div>

<div class="reg-field">
        <label for="jform_username" id="jform_username-lbl">
            Korisničko ime:
        </label>
</div>
<div style="float:left;">
        <input type="text" maxlength="25" class="inputbox required validate-username" value="" size="40" name="jform[username]" id="jform_username"/>
</div>
<div style="clear:both;"></div>

<div class="reg-field">
        <label for="jform_password1" id="jform_password1-lbl">
            Lozinka:
        </label>
</div>
<div style="float:left;">
        <input type="password" value="" size="40" name="jform[password1]" id="jform_password1" class="inputbox required validate-password"/>
</div>
<div style="clear:both;"></div>

<div class="reg-field">
        <label for="jform_password2" id="jform_password2-lbl">
            Potvrdite lozinku:
        </label>
</div>
<div style="float:left;">
        <input type="password" value="" size="40" name="jform[password2]" id="jform_password2" class="inputbox required validate-password"/>
</div>
<div style="clear:both;"></div>

<div class="reg-field">
        <label for="jform_email1" id="jform_email1-lbl">
            E-mail:
        </label>
</div>
<div style="float:left;">
        <input type="text" maxlength="100" class="inputbox required validate-email" value="" size="40" name="jform[email1]" id="jform_email1"/>
</div>
<div style="clear:both;"></div>

<div class="reg-field">
        <label for="jform_email2" id="jform_email2-lbl">
            Potvrdite e-mail:
        </label>
</div>
<div style="float:left;">
        <input type="text" maxlength="100" class="inputbox required validate-email" value="" size="40" name="jform[email2]" id="jform_email2"/>
</div>
<div style="clear:both;"></div>

<br/>
    <font color = "#FF0000">Sva polja su obavezna!</font><br/>

<br/>
    <button type="submit" class="button validate">Registracija</button>
    <input type="hidden" name="option" value="com_users" />
    <input type="hidden" name="task" value="registration.register" />
    <?php echo JHtml::_('form.token');?>

    </fieldset>

</form>

 </div>
</div>
<?php
}
?>

很抱歉,如果没有显示为代码块,但说明不清楚。无论如何,我想做的是在Submit按钮前添加一个文本字段,它前面会有一个类似what is 3加2的标签,如果答案不正确,Submit将不起作用。在不编辑Joomla core文件的情况下,有没有办法做到这一点?

您可以使用jQuery向页面添加标签和输入元素。然后将侦听器绑定到submit按钮,该按钮在提交表单之前检查您的答案的有效性。不要认为这不是一个非常安全的bot检查解决方案。为了增加额外的安全级别,您可以考虑将2和3更改为2和三,也可以在加减、乘法和除法之间交替,并在JoOMLA会话中存储答案和问题组合,而不是在JS中计算所有。