user1761419
user1761419

Reputation: 19

How to pass mutiple values from ajax to php file

I have 3 values stored in 3 seperate DIV tags and i want it to pass via ajax to php file. I have working code and stuck in passing all values to php file. Any ideas hoe to do it. This is my js code:

$('#button').click(function(){
var slider_value = $('#slider_value').text();
var slider1_value = $('#slider1_value').text();
var slider2_value = $('#slider2_value').text();
$.ajax({
    url:'placeDetailSend.php',
    type: 'POST',
    data: 'slider_value='+slider_value,
    success: function(data){
        $('#test').html(data);
        }
    });
});

and this it my php file:

<?php
if (isset($_POST['slider_value'])||($_POST['slider1_value'])){
echo $slider_value = $_POST['slider_value'];
echo $slider1_value = $_POST['slider1_value'];
}?>

Upvotes: 0

Views: 848

Answers (7)

nana.chorage
nana.chorage

Reputation: 506

jQuery Code:

$('#button').click(function(){
var slider_value = $('#slider_value').text();
var slider1_value = $('#slider1_value').text();
var slider2_value = $('#slider2_value').text();
$.ajax({
    url:'placeDetailSend.php',
    type: 'POST',
    data: {var1: slider_value, var2: slider1_value,var3:slider2_value },
    success: function(data){
        $('#test').html(data);
        }
    });
});



Use This php code for fetching values

<?php

echo $_POST['var1']; 
echo $_POST['var2']; 
echo $_POST['var3']; 

?>

Upvotes: 1

Ben Carey
Ben Carey

Reputation: 16968

Firstly, you could store your data differently (in an array) like so:

var slider_values = new Array();
silder_values.push($('#slider_value').text(),$('#slider_value2').text(),$('#slider_value3').text());

And then, you can simply pass this array as a data object to the ajax request like so:

$.ajax({
    url:'placeDetailSend.php',
    type: 'POST',
    data: {'slider_values': slider_values},
    success: function(data){
        // Do whatever here
        }
    });
});

However, if you use this method, you must be sure to loop through the $_POST['slider_values'] in PHP as it is now an array not a string. This is pretty simple:

foreach($_POST['slider_values'] as $value){
    // Write the current value
    echo $value
}

Upvotes: 0

Lixas
Lixas

Reputation: 7318

$.ajax({
    url:'placeDetailSend.php',
    type: 'POST',
    data: {
        'slider_value': slider_value,
        'slider_value1': slider_value1,
        'slider_value2': slider_value2
},
    success: function(data){
        $('#test').html(data);
        }
    });
});

Upvotes: 0

amrinder007
amrinder007

Reputation: 1475

You are only passing one div value in the datastring. Pass all the values like this:-

$('#button').click(function(){
   var slider_value = $('#slider_value').text();
   var slider1_value = $('#slider1_value').text();
   var slider2_value = $('#slider2_value').text();
   $.ajax({
     url:'placeDetailSend.php',
     type: 'POST',
     data: 'slider_value='+slider_value + '&slider1_value='+slider1_value + '&slider2_value='+slider2_value,
     success: function(data){
        $('#test').html(data);
     }
  });
});

Upvotes: 0

Shijin TR
Shijin TR

Reputation: 7788

Try,

    data: 'slider_value='+slider_value+'&slider1_value='+slider1_value+'&slider2_value='+slider2_value; 

OR

    data:{slider_value:slider_value,slider1_value:slider1_value,slider2_value:slider2_value}

You will get more about jquery ajax here

Upvotes: 0

Nikhil Mohan
Nikhil Mohan

Reputation: 891

$('#button').click(function(){
var slider_value = $('#slider_value').text();
var slider1_value = $('#slider1_value').text();
var slider2_value = $('#slider2_value').text();
$.ajax({
    url:'placeDetailSend.php',
    type: 'POST',
    data: {slider: [slider_value, slider1_value, slider2_value]},
    success: function(data){
        $('#test').html(data);
        }
    });
});

And in php file,

<?php
if (isset($_POST['slider'])){
$slider_value = $_POST['slider'];
echo '<pre>' . print_r($slider_value) . '</pre>';
}
?>

Upvotes: 0

MaX
MaX

Reputation: 1805

Values are seperated by & as in a URL:

data: 'slider_value='+slider_value+'&slider1_value='+slider1_value+'&slider2_value='+slider2_value,

Upvotes: 1

Related Questions