Come creare un modulo di iscrizione pagina rinfrescante non Codeigniter?
-
04-10-2019 - |
Domanda
Ecco quello che sto cercando di fare.
Voglio avere una homepage con il mio modulo di iscrizione che non aggiornare la pagina ogni volta che una fase di convalida è riuscita.
Voglio che il mio modulo di iscrizione per avere 2 passi.
1 ° step campi del modulo di iscrizione e la data di discesa .. quando tutto questo viene superato con esito positivo allora sarà trasmettere al captcha senza aggiornare la pagina o forse anche popup con captcha. Quando il captcha è successo superato l'utente verrà registrato.
Al momento quando la convalida viene passato i miei carichi di controller un submit_success.php vista ..
Qual è il modo migliore per raggiungere quello che sto cercando di fare?
Ajax? Javascript?
Ci sono tutorial CodeIgniter mi può puntare a?
Se non sei ancora in grado di darmi un esempio?
Soluzione
Si potrebbe fare Ajax chiamate al CI per la convalida utilizzando $ .ajax o $ .post, in questo modo si hanno solo per creare le regole di convalida in CI.
Ecco un esempio che ho trovato per iniziare: jquery postale codeigniter convalida
E Ecco un esempio CodeIgniter di Captcha con AJAX: http://www.99points.info/2010 / 03 / verify-captcha-con-ajax-con-codeigniter /
Altri suggerimenti
//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";
?>