2016-03-17 2 views
0

Ранее я получил помощь here, создав общую функцию Ajax для некоторых флажков. Теперь я пытаюсь интегрировать этот проект на сайт Wordpress и имею несколько проблем.Не удалось выполнить вызов ajax в wordpress

Вот мой текущий код:

<label class="rep_label"><input type="checkbox" id="goal1<?php get_current_user_id() ?>" name="GOAL_1_HIT" value="1" <?php if($rep_goal1_hit == 'YES'){echo "checked";}?> /> 
      <?php echo $rep_goal1; ?></label> 
<br />   
<label class="rep_label"><input type="checkbox" id="goal2<?php echo get_current_user_id() ?>" name="GOAL_2_HIT" value="1" <?php if($rep_goal2_hit == 'YES'){echo "checked";}?> /> 
      <?php echo $rep_goal2; ?></label> 
<br />   
<label class="rep_label"><input type="checkbox" id="goal3<?php echo get_current_user_id() ?>" name="GOAL_3_HIT" value="1" <?php if($rep_goal3_hit == 'YES'){echo "checked";}?> /> 
      <?php echo $rep_goal3; ?></label> 
<br />   
<label class="rep_label"><input type="checkbox" id="incentive<?php echo get_current_user_id() ?>" name="INCENTIVE_HIT" value="1" <?php if($rep_incentive_hit == 'YES'){echo "checked";}?> /> 
      <?php echo $rep_incentive; ?></label> 

JS/Ajax

jQuery(document).ready(function($) { 
    $("input[type=checkbox]").change(function() { 
     var $input = $(this); 
     $.ajax({ 
      url: 'checkbox.php', 
      type: 'POST', 
      data: { db_column:$input.attr("name"), strState:$input.is(":checked"), user:"<?php echo $current_user->ID; ?>" }, 
      success: function() { // this happens after we get results 
       $input.attr('checked', true);    
      }, 
      error:function(){ 
       $input.attr('checked', false); 
      } 
     }); 
    }); 
}); 

PHP

<?php 

$db_column = $_POST['db_column']; 
$strState = $_POST['strState']; 
$user = $_POST['user']; 

if(set_cimyFieldValue('$user', '$db_column', '$strState')){ 
    echo "ok"; 
} else { 
    echo "error"; 
} 

?> 

Я получаю "неожиданный конец ввода" ошибка на моей JavaScript, что Я бесконечно без искажений.

У меня был скрипт внутри html, и вызов Ajax даже не запускался, поэтому я переместил его в файл .js и включил его в одно и то же место, и теперь идет вызов ajax, но возвращает 404 на php-файл.

Это только верхушка айсберга Ajax, которую мне нужно будет реализовать. Какие общие соображения мне нужно знать о том, чтобы использовать мои собственные функции Ajax в Wordpress?

Если кто-то знаком с Cimy Extra User Fields, я просто пытаюсь сделать передний конец ajax для полей, предоставленных из этого плагина. Я думаю, что у меня есть проблема с попыткой использовать функцию плагина в моем php-файле ...

+0

После того, как я снова искал, я понимаю, что я действительно ищу, это просто общее использование ajax для вызова функции php. Я думаю, что многое из того, что я сделал выше, чрезмерно, учитывая плагин, который я использую. –

ответ

-1
data: ({ db_column:$input.attr("name"), strState:$input.is(":checked"), user:"<?php echo $current_user->ID; ?>" }) 
Смежные вопросы