Necesito un control de cordura aquí. Estoy publicando datos a través de una llamada AJAX pero, por alguna razón, aparece como nulo.
JavaScript:
var data = {}; data['pkStudyYears'] = id; data['years'] = []; data['years']['pkStudyYears'] = id; data['years']['fkStudyID'] = $('#fkStudyID').val(); data['action'] = action; data['years']['intStartYr'] = $('#startYearBox').val(); data['years']['intEndYr'] = $('#endYearBox').val(); console.log(data['years']); var posturl = '<?php echo site_url('manage/climate_indicators/updateStudyYears');?>' $.when($.ajax({ type: "POST", url: posturl, data: data, dataType: 'json' })) .done(function(result) { console.log(result.status); if (result.status === 'failed') { console.log(result.errors); } });php (actualizar años de estudio)
$postData = $this->input->post(NULL, true); $yearArray = $postData['years']; if(empty($yearArray)) { echo json_encode(array('status'=>'failed', 'errors'=>'Years are empty')); exit(); }Sigo obteniendo un resultado fallido con el error "Los años están vacíos". ¡No puedo entender lo que me estoy perdiendo!