Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

116
Visualizações
WordPress admin-ajax devuelve una solicitud incorrecta 400

En un archivo de plantilla, necesito obtener los nuevos datos de la interfaz cuando un usuario hace doble clic y cambia el registro en una tabla. Probé y la consola muestra que la solicitud es correcta, sin embargo, independientemente de lo que intenté, el administrador-Ajax siempre devuelve una solicitud incorrecta. El código PHP que espera la solicitud en el archivo de plantilla es:

 add_action( "wp_ajax_update_records", "update_records" ); add_action( "wp_ajax_nopriv_please_login", "please_login" ); function update_records(){ global $wpdb; $colName = "'" . $_POST['upd_column'] . "'"; $wpdb->update('Reservations', array( $colName => $_POST['upd_value'] ), array( 'ReservationID' => $_POST['record_id'] ) ); wp_die(); }; function please_login() { echo "You must log in to work"; die(); }

El código jQuery que envía la solicitud es:

 jQuery('#work td').dblclick( function dolly_script() { var text = jQuery(this).text(); var headerName = jQuery(this).attr('headers'); jQuery(this).text(''); jQuery('<input />').appendTo(jQuery(this)).val(text).select().blur( function() { var newVal = jQuery(this).val(); var selectionID = jQuery(this).closest("tr").children("td[headers='ReservationID']").text(); jQuery(this).parent().text(newVal).find('input').remove(); jQuery.ajax({ url: '../wp-admin/admin-ajax.php', type: 'POST', dataType : "json", data: JSON.stringify({ action: 'update_records', record_id: selectionID, upd_column: headerName, upd_value: newVal }) }) }) });

Probé también sin JSON.stringify y sin tipo de datos.
En el archivo de funciones también he agregado:

 wp_register_script( 'dolly_script', '/wp-content/themes/bootcms/work.js'); $myAjax = array( 'ajax_url' => admin_url( 'admin-ajax.php' ) ); wp_localize_script( 'dolly_script', 'ajax_url', $myAjax ); wp_enqueue_script( 'dolly_script' );

Dentro de "add_action('wp_enqueue_scripts', 'myfunction');" declaración.

Si alguien pudiera ayudar es muy apreciado, pasé un día entero pero no encontré ninguna solución.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Resolví el problema. Aquí está la solución en caso de que ayude a otros:

Moví la función PHP al archivo functions.php.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda