Tank_auth보기에서 login_form을 HTML 템플릿에 추가하려고합니다.로그인 login_form로드하기 탱크 인증보기 PHP 오류
이렇게하면 누락 된 변수에 관한 몇 가지 오류가 반환되며, 내가 잘못하고 있는지 확실하지 않습니다.
내 컨트롤러 :
PHP는 오류가 있었다 다음입니다
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html lang="en"> <head><?php echo $template['head'] ?></head> <body> <div id="topbar"><?php echo $topbar['account'] ?></div> </body> </html>
페이지를로드 할 때 내가 받고있어 오류 : 같은
는public function index() { $topbar['account'] = $this->load->view('auth/login_form'); $data['topbar'] = $topbar; $this->load->view('main_template', $data); }
홈페이지 템플릿 보인다 발생했습니다
심각도 : Noti CE
메시지 : 정의되지 않은 변수 : show_captcha
파일 이름 : 인증/login_form.php
줄 번호 :
: 47
또한, 나는에 대해 동일한 오류 메시지가 표시됨
Undefined variable: login_by_username
Heres the login form (손길이 닿지 않은 ... defa ULT의 tank_auth 양식)
<?php
$login = array(
'name' => 'login',
'id' => 'login',
'value' => set_value('login'),
'maxlength' => 80,
'size' => 30,
);
if ($login_by_username AND $login_by_email) {
$login_label = 'Email or login';
} else if ($login_by_username) {
$login_label = 'Login';
} else {
$login_label = 'Email';
}
$password = array(
'name' => 'password',
'id' => 'password',
'size' => 30,
);
$remember = array(
'name' => 'remember',
'id' => 'remember',
'value' => 1,
'checked' => set_value('remember'),
'style' => 'margin:0;padding:0',
);
$captcha = array(
'name' => 'captcha',
'id' => 'captcha',
'maxlength' => 8,
);
?>
<?php echo form_open($this->uri->uri_string()); ?>
<table>
<tr>
<td><?php echo form_label($login_label, $login['id']); ?></td>
<td><?php echo form_input($login); ?></td>
<td style="color: red;"><?php echo form_error($login['name']); ?><?php echo isset($errors[$login['name']])?$errors[$login['name']]:''; ?></td>
</tr>
<tr>
<td><?php echo form_label('Password', $password['id']); ?></td>
<td><?php echo form_password($password); ?></td>
<td style="color: red;"><?php echo form_error($password['name']); ?><?php echo isset($errors[$password['name']])?$errors[$password['name']]:''; ?></td>
</tr>
<?php if ($show_captcha) {
if ($use_recaptcha) { ?>
<tr>
<td colspan="2">
<div id="recaptcha_image"></div>
</td>
<td>
<a href="javascript:Recaptcha.reload()">Get another CAPTCHA</a>
<div class="recaptcha_only_if_image"><a href="javascript:Recaptcha.switch_type('audio')">Get an audio CAPTCHA</a></div>
<div class="recaptcha_only_if_audio"><a href="javascript:Recaptcha.switch_type('image')">Get an image CAPTCHA</a></div>
</td>
</tr>
<tr>
<td>
<div class="recaptcha_only_if_image">Enter the words above</div>
<div class="recaptcha_only_if_audio">Enter the numbers you hear</div>
</td>
<td><input type="text" id="recaptcha_response_field" name="recaptcha_response_field" /></td>
<td style="color: red;"><?php echo form_error('recaptcha_response_field'); ?></td>
<?php echo $recaptcha_html; ?>
</tr>
<?php } else { ?>
<tr>
<td colspan="3">
<p>Enter the code exactly as it appears:</p>
<?php echo $captcha_html; ?>
</td>
</tr>
<tr>
<td><?php echo form_label('Confirmation Code', $captcha['id']); ?></td>
<td><?php echo form_input($captcha); ?></td>
<td style="color: red;"><?php echo form_error($captcha['name']); ?></td>
</tr>
<?php }
} ?>
<tr>
<td colspan="3">
<?php echo form_checkbox($remember); ?>
<?php echo form_label('Remember me', $remember['id']); ?>
<?php echo anchor('/auth/forgot_password/', 'Forgot password'); ?>
<?php if ($this->config->item('allow_registration', 'tank_auth')) echo anchor('/auth/register/', 'Register'); ?>
</td>
</tr>
</table>
<?php echo form_submit('submit', 'Let me in'); ?>
<?php echo form_close(); ?>
이 희망 누군가가 탱크 인증에 익숙하고 쉽게이 문제를 해결할 수 있습니다.
감사합니다.
나는 그것이 깨끗한 설치에 아무런 문제가 없었음에도 불구하고 captcha 기능을 사용하고 있으며 사용자가 전자 메일 또는 사용자 이름을 통해 권한을 부여 받았 는가에도 불구하고 귀하의 코드와 tank_auth가 충돌한다고 생각합니다. –
저는 기본 기능을 사용합니다. 즉, 전자 메일 또는 사용자 이름 (입력하기로 결정한 사용자)을 통해 권한을 부여 받아야합니다. 그리고 네, 현재 captcha 기능을 사용하고 있습니다 (기본값). CI 및 Tank Auth를 새로 설치합니다. 다른 페이지에서는 auth/login의 컨트롤러 URI에 직접 연결됩니다. 하지만 이번에는 내 페이지에 간단히 추가하고 싶습니다. –
Tank_Auths 컨트롤러를 모델로 변경하고이를 통해 호출 해 보았습니다. 지금까지 문제 없음. –