Mi affaccio solo adesso su ajax perchè voglio implementare questo linguaggio sul mio form, che mi permette di recuperare un valore da db ed inserirlo in un tag input dopo che con ajax ho validato un precedente campo input. vengo al codice. Qua c'è ilmarkup
questo è il codice ajax js
ed infine il php
problema che non va!. Non so dove mettere le mani. ho seguito un po di guide in rete ma non ne vengo a capo. Dimenticavo di dire che quello che voreri fare è questo: nel tag input email_rec inserisco la mail dell'utente, al momento di cambiare viene fatta una chiamata ad ajax che verifica con php se la mail inserita è presente nel db. Se l'esito è positivo recupero sempre dal db la domanda che andrà inserita nelcampo input che viene dopo quello della mail. Nelcaso non fosse presente la mail dovrei dare un alert, o con un semplice alert oppure potrei scrivere qualcosa come textarea invece di input. Non mi sembra molto complicato ma non capisco cosa non vada.
Chi mi può dare una dritta?
HTML:
<p>
<label for="username" class="block"></label>
<input type="email" name="email" id="email_rec" onkeypress="mail(this.value)" placeholder="Inserisci la tua mail"/>
</p>
questo è il codice ajax js
PHP:
<script type="text/javascript">
$(document).ready(function(){
$("#email_rec").onchange(function() {
var dati = $('#email_rec').attr('value');
var data_send = "email="+dati;
$.ajax({
type: "POST",
dataType: "html",
url: "mail.php",
data: data_send,
success: function(data){
$('input[name="domanda"]').val(data);
},
error: function(){
alert ("Sbagliato!");
}
});
});
});
</script>
PHP:
if(isset($_POST['email'])){
$mail=$_POST['email'];
//Se tuè stato inserito procedo a verificare che ci sia nel db
if($result = $mysqli->query("SELECT * FROM utenti ")){
//Se trovo corrispondenza nel db con la mail inserita estraggo la domanda
while($row = $result->fetch_row())
{
echo "";//echo $row[5], " ", $row[10];
}
//A questo punto controllo che la mail che arriva da ajax sia uguale a quella inserita ne db
if($mail == $row[5]){
//Se è uguale metto in echo la domanda di sicurezza legata alla mail
echo $row[10];
}
}
}
Chi mi può dare una dritta?