Estoy aprendiendo AJAX siguiendo los tutoriales en https://www.w3schools.com/xml/ajax_intro.asp . He completado con éxito un par de solicitudes GET, ahora estoy intentando una solicitud POST.
mi formulario:
<input class="form-control" type="email" id="log_email" required name="log_email"> <input class="form-control" type="password" id="log_password" required name="log_password"> <a class="btn" onclick="login(this)" >Log in</a>Mi Ajax:
<script type="text/javascript"> function login(this_record) { var xhttp = new XMLHttpRequest(); var UsrEml = $('#log_email').val(); var UsrPw = $("#log_password").val(); var AjaxURL = ("ajax_login.php") ; var AjaxPost = ("eml=" + UsrEml + "&pw=" + UsrPw); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("accountstuff").innerHTML = this.responseText; } }; xhttp.open("POST", AjaxURL, true); xhttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); xhttp.send(AjaxPost); } </script>Mi PHP:
<?php echo ($_POST["eml"]) ; ?>El resultado es: Array ( [eml] => test@user.com [pw] => Password1 )
Estaba esperando: test@user.com
¿Por qué obtengo una matriz para una variable $_POST?