0

私はこのフォームを持っています:

<html>
<head>
<title>التسجيل</title>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
</head>
<body dir="rtl">

<?php echo validation_errors(); ?>

<?php echo form_open('form'); ?>

<h5>الإسم الكامل:</h5>
<input type="text" name="fullname" value="" size="50" />

<h5>الجوال:</h5>
<input type="text" name="mobile" value="" size="50" />

<h5>هاتف المنزل:</h5>
<input type="text" name="home" value="" size="50" />

<h5>اسم المستخدم:</h5>
<input type="text" name="username" value="" size="50" />

<h5>كلمة السر:</h5>
<input type="text" name="password" value="" size="50" />

<h5>اعادة كلمة السر:</h5>
<input type="text" name="cpassword" value="" size="50" />

<h5>الايميل:</h5>
<input type="text" name="email" value="" size="50" />
 <br><br>
<div><input type="submit" value="التسجيل" /></div>

</form>

</body>
</html>

アラビア語の文章は気にしないでください。コントローラーは次のとおりです。

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

class Membership extends CI_Controller {

    public function __construct()
    {
        parent::__construct();
        $this->load->helper(array('form', 'url'));
        $this->load->library('form_validation');        
    }

    public function index()
    {
        //Loads the login page which has a registration option
        $this->load->view('login');
    }

    public function register()
    {
        $post = $this->input->post();
        if($post)
        {
            //handle posted data
            $fullname = $this->input->post('fullname');
            $email = $this->input->post('email');
            $mobile = $this->input->post('mobile');
            $home = $this->input->post('home');
            $username = $this->input->post('username');
            $password = $this->input->post('password');
            $confirmPassword = $this->input->post('cpassword');
            $memberType = 'silver';

            if ($this->form_validation->run() == FALSE)
            {
                $this->load->view('register');
            }
            else
            {
                $this->load->view('welcome_message');
            }


        }else{
            $this->load->view('register');
        }
    }

}

フォームの送信ボタンをクリックすると、404 が表示され、アドレス バーのリンクは http://domain.com/index.php/formです。

なぜこうなった?投稿されているかどうかを確認してから、x をロードする必要があります。y をロードしない場合。

codeigniter の初心者なので、申し訳ありません。

4

2 に答える 2

1

CIユーザーガイドからコードをコピーしたように:

   form_open('form'); // here is a form action which is form class index function

に変更するだけです:

  form_open('membership/register');

つまり:

  form_open('location/to/sumbit/to');

それでおしまい!

于 2013-03-12T14:04:12.900 に答える
1

変化する

<?php echo form_open('form'); ?> 

<?php echo form_open('membership/register'); ?> // class/function
于 2013-03-12T14:06:36.237 に答える