0

HTMLで直接記述されたフォームであるCodeigniterのビューがあります。

<form action="http://localhost/index.php/cindice/mostrar" mehtod="post">
<label for="usuario" id="usr">Usuario</label>
<input type="text" name="usuario" /><br /><br />
<label for="contrasenya" id="ctr">Contrase&ntilde;a</label>
<input type="password" name="contrasenya" id="ctr" />
<label for="acceder"></label><br /><br />
<input type="submit" name="acceder" id="bacceder" value="Entrar" /> 
</form>

フォームには、usuario (ユーザー) と contraseña (パスワード) の 2 つのフィールドがあります。

そしてそれはコントローラーです:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Cindice extends CI_Controller {


function __construct() {
    parent::__construct();
}

public function index()
{
    $this->load->view('indice');
}

public function mostrar()
{
    $mostrar=$this->input->post('usuario');
    print_r($_POST);
    echo "<br />";

}

 }
?>

ページ localhost/index/cindice をロードし、ユーザー名とパスワードを書きます。しかし、print_r($_POST) コマンドの結果は array() です。これは、任意の値がフォームに保存されたことを意味します。

どうすれば修正できますか?

4

2 に答える 2

2

フォームの開始タグでメソッド属性のスペルが間違っているため、空だと思います。あなたが入れた

<form action="http://localhost/index.php/cindice/mostrar" mehtod="post">

あるべきとき

<form action="http://localhost/index.php/cindice/mostrar" method="post">
于 2013-02-15T12:32:49.637 に答える
0

構成でCSRFがオンになっている場合は注意してください。オンになっている場合は、codeigniterフォームヘルパーとform_open()を使用して、非表示のセキュリティ値を追加する必要があります。

于 2013-02-15T12:50:32.670 に答える