0

CodeIgniter を使用してユーザー ログイン システムを作成しようとしています。以下はフォームコード(ログインビュー)です。

<?php
    echo form_open('main/login_validation');

    echo validation_errors();

    echo "<p>Email<br/>";
    echo form_input('email', $this->input->post('email'));
    echo "</p><br/>";

    echo "<p>Password<br/>";
    echo form_password('password');
    echo "</p><br/>";

    echo "<p>";
    echo form_submit('login_submit', 'login');
    echo "</p>";

    echo form_close();          
?>

ブラウザからソースを表示すると、

"form action="http://site.com/beta/?main/login_validation" method="post"  "

ご覧のとおり、 の後にクエスチョン マーク " ?"が表示されbeta/ます。

これは、その後の手順にも影響を与えています。つまり、リダイレクトされsite.com/beta/?main/login_validationて、データがまったく検証されません。

4

1 に答える 1

0

このform_open関数は、base_urlにあるの値を使用しますapplication/config/config.php。がbase_url正しく設定されていないか、まったく設定されていないようです。このbase_url値は、インストール プロセスの一部として設定する必要があります。設定されていない場合、CodeIgniter は正しい値を推測します。

これが設定されていない場合、CodeIgniter はプロトコル、ドメイン、およびインストールへのパスを推測します。


を設定するにはbase_url: サイトを開いapplication/config/config.phpて値を入力しbase_urlます。入力する値は、通常、index.phpファイルが配置されている場所で、末尾にスラッシュがあります。

CodeIgniter ルートへの URL。通常、これはベース URL で、末尾にスラッシュが付きます

例えば:

$config['base_url'] = 'http://www.yoursite.com/';
于 2013-05-10T19:13:17.363 に答える