27/12/16 20:45
tuttodiMC
Salve a tutti, oggi stavo cercando di realizzare una richiesta post con JQuery. Ho girato per il web, ho trovato codici di esempio da w3schools o stackoverflow eppure, una volta scritto il codice, il risultato è sempre il valore undefined. Posto il codice del file in cui ho messo anche il codice php:
Il codice php avevo provato a scriverlo io, poi ho visto un po' in giro e ho trovato una cosa come quella che c'è adesso. Ora chiedo a voi: Cosa sto sbagliando? Perché sia Data che Success hanno come risultato undefined? Perchè se metto nell'alert solo response ottengo il codice sorgente della pagina? JQuery mi sta dando un sacco di problemi. A volte ho seri dubbi sulla sua affidabilità.
<!DOCTYPE html> <html> <head> <script src="jquery-3.1.1.js"></script> <script type="text/javascript"> $(document).ready(function(){ var data = {}; data.name="Donald Duck"; data.city="Duckburg"; $("button").click(function(){ $.post("index.php", data, function(response){ alert("Data: "+response.data+" Success: "+response.success); } ); }); }); </script> </head> <body> <button>Send an HTTP POST request to a page and get the result back</button> <?php $return = array(); if (isset($_POST['name']) && isset($_POST['city'])) { $return["data"] = utf8_encode("Dear ".$_POST['name'].". Hope you live well in ".$_POST['city']); $return["success"] = "success"; echo json_encode($return); exit(); } ?> </body> </html>
Il codice php avevo provato a scriverlo io, poi ho visto un po' in giro e ho trovato una cosa come quella che c'è adesso. Ora chiedo a voi: Cosa sto sbagliando? Perché sia Data che Success hanno come risultato undefined? Perchè se metto nell'alert solo response ottengo il codice sorgente della pagina? JQuery mi sta dando un sacco di problemi. A volte ho seri dubbi sulla sua affidabilità.
aaa