crmpicco
crmpicco

Reputation: 17181

jQuery ajax not passing data JSON value

I am having some issues with the jQuery Ajax function and PHP.

I am checking the existance of the nav key in the $_REQUEST variable in PHP with code such as this:

if ($_REQUEST['nav']) {
    // do something
} else {
    echo 'Please specify NAV.';
}

However the above expression never evaluates as nav is never passed to it and always outputs 'Please specify NAV.'

console.log('paramList: ' + paramList);

$.ajax({
    type: 'POST',
    url: '/admin/nav_builder/edit.php?act=save&nav_id=<?php echo $nav_id; ?>',
    data: {'nav':paramList},
    dataType: 'json',
    error: function(xhr, err) {                             
        loadLayout();
        hideLoader();
        hideLoaderPalette();
    },
    success: function(data){
        $('.errorMsg').html(data.html);
        hideLoader();
        hideLoaderPalette();
    }
});

Using the Firefox Firebug plugin I can see that paramList does indeed hold a value, this is:

paramList: {"section0":{"elem0":{"nav_palette":"text","nav_name":"fdgfdgdfg","nav_url":""},"elem1":{"nav_palette":"category","c_id":"226"}}}

I can't see for the life of my why nav is not being passed to the URL provided to the ajax function.

Upvotes: 0

Views: 529

Answers (2)

John Rey Flores
John Rey Flores

Reputation: 187

Try to print first if the "nav" parameter if it has a value.

echo $_REQUEST['nav'];

The other one is that you have used two method in one request.

Just try the following.

$.ajax({
    type: 'POST',
    url: '/admin/nav_builder/edit.php',
    data: {act:'save', nav_id:'<?php echo $nav_id; ?>', nav:paramList},
    dataType: 'json',
    error: function(xhr, err) {                             
        loadLayout();
        hideLoader();
        hideLoaderPalette();
    },
    success: function(data){
        $('.errorMsg').html(data.html);
        hideLoader();
        hideLoaderPalette();
    }
});

Upvotes: 1

Jeff Watkins
Jeff Watkins

Reputation: 6359

Try $_POST instead. As you're posting the nav contents.

Upvotes: 0

Related Questions