Mi código Jquery es
jQuery(".loginbtn").click(function(e) {
var value = JSON.stringify(jQuery(jQuery('#form-login input[class!="noAjax"]'), jQuery('#form-login')).serialize());
alert(value); // here I am able to see "username=itsvalue&password&itsvalue...."
jQuery.ajax ({
type : "POST",
url : "index.php?option=com_ajax&module=socialauth&method=loginUser&format=json",
data : value,
contentType: "application/json",
success : function(response) {
jQuery("#login-msg").html(response['data']);
},
error : function(jqXHR, error, errorThrown) {
if(jqXHR.status){
jQuery("#login-msg").html(jqXHR.responseText + jqXHR.status);
}else{
alert("Something went wrong");
}
}
});
});
Aquí está mi PHP código de ayuda:
public static function loginUserAjax() {
// Required objects
$input = JFactory::getApplication()->input;
var_dump((new JInput($input->get('data', '', 'array')))->getString('username') );
}
aquí no recibo ningún dato PUBLICADO. He intentado muchas cosas. No se porque.
No estoy seguro acerca de $input->get('data', '', 'array')
. ¿Está seguro de que se pasa data
var?
Creo que simplemente puede usar $input->getString('username')
y así sucesivamente para recuperar partes de la consulta de datos pasada.