Salve, cercavo delle risposte sulla rete ma probabilmente non pongo la giusta domanda.
Vorrei capire quale tipo di chiamata posso fare con ajax.
Mi spiego nel dettaglio, è noto che in uno script php posso tramite ajax eseguire un'altro script passando dei parametri e ricevendo la risposta.
Sto cercando di utilizzare uno script di sole funzioni e devo eseguire una chiamata da ajax ad una funzione specifica.
Due righe di codice si spiegano meglio.
Ho uno script che contiene il nome di alcuni agenti elencati in una select e selezionando uno di questi deve chiamare la funzione contenuta dentro lo script.
questo è il metodo classico dove richiamo uno script ma io devo limitarmi alla funzione getAgente().
codice:
(document).ready(function(){
$('#agentenome').change(function() {
$id = $('#agentenome').val();
$('#id_agente').val();
$('#agente').val();
$('#agenteindirizzo').val();
$('#agenteemail').val();
$('#agentelocalita').val();
$('#agentetelefono').val();
$.ajax({
type : 'POST',
url: "<?php 'controller/estrai_agente.php');?>",
data: "id="+ $id ,
success : function (result) {
data = result.split(",");
id = data[0];
nome = data[1];
cognome = data[2];
$('#id_agente').val(id);
$('#agente').val(nome+ ' ' + cognome);
$('#agenteindirizzo').val( data[3]);
$('#agenteemail').val( data[4] );
$('#agentelocalita').val( data[5]);
$('#agentetelefono').val( data[6]);
},
error : function(msg) {
alert("E' evvenuto un errore. Il stato della chiamata: "+msg);
$("#errore").html(msg);
}
});
});
});
la funzione interessata è la seguente
Codice PHP:
function getAgente(){
$mysqli = $GLOBALS['mysqli'];
$records = [];
$sql = "SELECT * FROM agenti WHERE id='$id";
$result = $mysqli->query($sql);
if($result && $result->num_rows){
while ( $row = $result->fetch_assoc() ) {
foreach ($result as $key) {
$data = $key['id']. ",".$key['nome']. ","
.$key['cognome']. "," .$key['indirizzo'].","
.$key['email']."," .$key['localita'].",".$key['mobile'];
echo $data ;
}
}
Qualcuno ( Se sono riuscito a spiegarmi) può indicarmi quale istruzione url devo usare ?
Grazie.