Как создать Codeigniter Non Page Освежающая форма регистрации?

StackOverflow https://stackoverflow.com/questions/3747731

  •  04-10-2019
  •  | 
  •  

Вопрос

Вот что я пытаюсь сделать.

Я хочу иметь домашнюю страницу с моей формой регистрации, которая не обновляет страницу каждый раз, когда шаг проверки не удается.

Я хочу, чтобы моя форма регистрации будет 2 шага.

Поля формы регистрации 1-го шага и выпадают дату. Когда все это передается успешно, то он будет переслан на CAPTCHA без обновления страницы или, возможно, даже всплывающую с помощью CAPTCHA. Когда CAPTCHA успешно прошел, пользователь будет зарегистрирован.

В настоящее время при прохождении валидации мой контроллер загружает представление apt_success.php ..

Какой лучший способ достичь того, что я пытаюсь сделать?

Ajax? JavaScript?

Есть ли какие-нибудь учебники Codeigniter, вы можете указать мне?

Или вы сможете дать мне пример?

Это было полезно?

Решение

Вы можете сделать вызовы AJAX обратно в CI для проверки, используя $ .ajax. Или $ .post, таким образом, вам нужно только создать ваши правила проверки в CI.

Вот пример, который я нашел, чтобы начать: Валидация записи почты jQuery

А вот пример кодовой связи CAPTCHA с Ajax:http://www.99points.info/2010/03/verify-captcha-with-ajax-uss-codeignite/

Другие советы

//html function 
<div id="report"></div>
<form>
username : <input type="text" id="username" />
password : <input type="password" id="password" />
<input type="button" id="submit" onclick="validate();" value="sign in" />
</form>

//javascript function
function validate()
{



                var username = $("#username").val();//get value for username via d username id
                var password = $("#password").val();//get the value for password via d password id






                var url_link = "http://localhost/site_root/controller/blank";
                var reload_url = "http://localhost/site_root/controller/validation_function";
                var form_data = {
                username: username,
                password: password,
                ajax : '1'
                };
                $.ajax({
                url: url_link,
                type: 'POST',
                async : false,
                data: form_data,
                success: function() {

                 $("#report").load(reload_url);


                }
                });
                return false;
}


//controller

<?php if(!defined("BASEPATH")) exit("no direct access allowed");

class Controller extends CI_controller
{

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


        function blank()
        {

        }



        function validate_function()
        {
        $username = $this->input->post->("username");
        $password = $this->input->post->("password");

        /*
        perform db validation if passed redirect user to the ideal url (logged in user page)
        */
        else
        /*
        $this->load-view("wrong_credentials");
        */


        }


}
?>

//wrong_credentials.php view

<?php
echo "wrong user name and password combination . try again";
?>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top