簡體   English   中英

了解Joomla默認登錄

[英]Understanding Joomla default login

一般而言,我對Joomla和Php還是陌生的。 我需要了解Joomla如何執行登錄操作(通過php代碼)。 以下是執行該操作的php代碼段:

<form action="<?php echo JRoute::_('index.php?option=com_users&task=user.login'); ?>" method="post">

        <fieldset>
            <?php foreach ($this->form->getFieldset('credentials') as $field): ?>
                <?php if (!$field->hidden): ?>
                    <div class="login-fields"><?php echo $field->label; ?>
                    <?php echo $field->input; ?></div>
                <?php endif; ?>
            <?php endforeach; ?>
            <?php if (JPluginHelper::isEnabled('system', 'remember')) : ?>
            <div class="login-fields">
                <label id="remember-lbl" for="remember"><?php echo JText::_('JGLOBAL_REMEMBER_ME') ?></label>
                <input id="remember" type="checkbox" name="remember" class="inputbox" value="yes"  alt="<?php echo JText::_('JGLOBAL_REMEMBER_ME') ?>" />
            </div>
            <?php endif; ?>
        <button type="submit" class="button"><?php echo JText::_('JLOGIN'); ?></button>
            <input type="hidden" name="return" value="<?php echo base64_encode($this->params->get('login_redirect_url', $this->form->getValue('return'))); ?>" />
            <?php echo JHtml::_('form.token'); ?>
        </fieldset>
    </form>

據我了解,第一行執行POST請求以將用戶名和密碼發布到服務器。 此外,成功驗證后應檢索會話令牌。 但是,我無法弄清楚此行中的用戶名和密碼(由用戶插入並應通過POST請求發送)的確切位置。 或者,它們是從哪里找來的? 另外,響應內容(會話令牌)存儲在哪里?

我的目標是使用JavaScript模仿請求,以便我可以使用外部移動應用執行登錄。 換句話說,我需要用JavaScript編寫相同的邏輯,以便可以從移動應用程序登錄網站。

這些字段是從login.xml文件中的以下路徑\\ components \\ com_users \\ models \\ forms中檢索的。 getFieldset('credentials')將在上述文件中以名稱“ credentials” <fieldset name="credentials"獲得字段集的字段詳細信息。您可以使用foreach顯示該字段。 您可以參考此鏈接以獲取更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM