Put those add_action functions in your functions.php file too. If they're in header.php, WordPress never registers them since header isn't loaded in AJAX. Also, you don't need that is_admin() check. The theme's header will never load in admin. So, your functions file should look like this:

add_action('wp_ajax_my_special_action', 'my_action_callback');
add_action('wp_ajax_nopriv_my_special_action', 'my_action_callback');
function my_action_callback() {

 $whatever = $_POST['whatever'];

 $whatever += 10;

    echo 'whatever now equals: ' . $whatever;

 die();
}


And the beginning of that part of your theme's header file should look like this:

&lt;?php
$_ajax = admin_url('admin-ajax.php');
?&gt;
&lt;script type="text/javascript" &gt;
jQuery(document).ready(function($) {


Other than that, your code looks like it's good to go!

How to get Ajax into a theme - without writing a plugin?
I was googling quite a lot for this question, but I couldn't find an answer. But what is the highest reachable character level in Torchlight?
