Frage

Heres, was ich versuche zu tun.

Ich mag eine Homepage mit meinem Anmeldeformular haben, die der Seite nicht aktualisieren jedes Mal, wenn ein Validierungsschritt fehlgeschlagen ist.

Ich mag mein Anmeldeformular 2 Schritte haben.

1. Schritt Anmeldeformularfelder und Datum Drop-Down .. wenn alles erfolgreich weitergeben wird, dann werden es zu captcha weiterleiten, ohne die Seite zu aktualisieren oder vielleicht sogar Pop-up mit Captcha. Wenn das Captcha erfolgreich ist vergangen wird der Benutzer registriert werden.

Zur Zeit, wenn die Überprüfung ist mein Controller lädt einen submit_success.php geben ..

Was ist der beste Weg, um zu erreichen, was ich versuche zu tun?

Ajax? Javascript?

Gibt es codeigniter Tutorials Sie mir zeigen können?

Oder würden Sie in der Lage sein, mir ein Beispiel geben?

War es hilfreich?

Lösung

Sie könnten Ajax-Aufrufe für die Validierung zurück zu CI machen mit $ .ajax oder $ .post, auf diese Weise Sie müssen nur Ihre Validierungsregeln in CI erstellen.

Hier ist ein Beispiel fand ich Sie erhalten begonnen: jquery Post codeigniter Validierung

Und hier ein CodeIgniter Beispiel sind Sicherheits mit Ajax: http://www.99points.info/2010 / 03 / verify-captcha-mit-ajax-using-Codeigniter /

Andere Tipps

//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";
?>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top