Controllo username: checkdata.php?controllo=1&val=username_inserito
Controllo password: checkdata.php?controllo=2&val=password_inserita
Queste sono gli URL delle pagine che devi richiamare tramite AJAX dalla prima pagina, non sono da inserire nel codice PHP.
Ecco il codice PHP completo della pagina checkdate.php:
Codice PHP:
<?php
require_once("connettimysqli.php");
switch($_GET['controllo']){
case 'username': $campo = 'username'; break;
case 'email': $campo = 'email'; break;
}
$valore = mysqli_real_escape_string($_GET['val']);
$result = $mysqli->query("SELECT * FROM uty WHERE username = '$valore'"); // !!!ATTENZIONE!!! se la colonna non si chiama 'username', dovresti cambiare il nome ;)
if($result->num_rows != 0)
echo '<img src="no.jpg" alt="Icona KO" width="15" height="15">';
else
echo '<img src="yes.jpg" alt="Icona OK" width="15" height="15">';
?>
Ho eliminato i tag HTML iniziali perché non servono visto che dobbiamo includere il contenuto in un documento dove questi tag sono già presenti
Quindi, andiamo a modificare il file principale in questo modo:
Codice HTML:
<html>
<head>
<script src='http://code.jquery.com/jquery-1.9.1.min.js'></script>
<script type="text/javascript">
function FormKeyUp(){
var username = $("#username").val();
var email = $("#email").val();
var ripemail = $("#ripemail").val();
if(username != "" && email != "" && email == ripemail){
$("#submit").attr("disabled", false);
}else{
$("#submit").attr("disabled", true);
}
}
$(document).ready(function() {
$("input").change(function(){
var id = this.id;
$.ajax({
url: "checkdate.php",
type: "GET",
data: ({
controllo: $(this).attr('id'),
val: $(this).val()
}),
success: function(response){
$("#check_" + id).html(response);
}
});
});
});
</script>
</head>
<body>
<div align="center">
<h2>Esempio form di registrazione</h2>
</div>
<form action="salvadati.php" method="POST">
<div style='font-family:Comic Sans MS; font-size: 20px'>
<label>
Username: <input onKeyUp="FormKeyUp()" type="text" name="username" id="username"/>
<span id="check_username"></span>
</label>
<label>
<p><p>
E-Mail: <input onKeyUp="FormKeyUp()" type="text" name="email" id="email" />
<span id="check_email"></span>
</p></p>
</label>
<label>
<p><p>
Ripeti-email: <input onKeyUp="FormKeyUp()" type="text" name="ripemail" id="ripemail" autocomplete="off" />
<span id="check_ripemail"></span>
</p></p>
</label>
</div>
<div align ="center">
<button id ="submit" style="font-family:Comic Sans MS;font-size:25px" disabled>Invio Dati</button>
</div>
</form>
</body>
</html>
Se ti funziona andiamo avanti