Spyder Tech Spyder Tech - 9 months ago 156
Javascript Question

Passing value from jquery to php variable in same page

I know similar questions to this have been asked before but I don't see an answer that suits my question. I have a div that triggers a jquery script which stores an id. I can get the id into a variable in the jquery but I want to then assign that id to a PHP variable that exists on the same page.

So far this is what I've got. Here is my div that exists in


echo '<div id="'.$unit_id.'" class="dropdown unit '.$unit_size.' unit-'.$unit_number.' '.$unit_status.' data-unit-id-'.$unit_id.'">';

And here is my jquery that I call in from

var unit_id = $(this).attr('id');
type: 'post',
data: {id: unit_id}, //Pass the id

I want to pass the
into a variable on
but I can't seem to find a way of getting in there. I've tried using post but there really isn't a form being submitted. It's just a dive being clicked on.


You must change your id in your <div> and set it to fetch the variable sent by jQuery. Other than that, your jQuery script looks fine.

Here's how I would do it:

// Fetch the variable if it's set
<?php $unit_id = (isset($_POST["id"])) ? $_POST["id"] : null; ?>

// Echo it as the id of the div
<div id="<?= $unit_id; ?>" class="dropdown unit"></div>


The PHP code above is equal to:

// Fetch the variable if it's set
    if (isset($_POST["id"])):
        $unit_id = $_POST["id"];
        $unit_id = null;