如何将多个值从ajax传递到php文件

时间:2013-06-07 06:06:19

标签: php ajax post multiple-value

我有3个值存储在3个单独的DIV标签中,我希望它通过ajax传递给php文件。我有工作代码,并坚持将所有值传递给php文件。任何想法都可以做到这一点。 这是我的js代码:

$('#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);
        }
    });
});

这是我的php文件:

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

7 个答案:

答案 0 :(得分:1)

值在URL中以&分隔:

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

答案 1 :(得分:1)

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']; 

?>

答案 2 :(得分:0)

$('#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);
        }
    });
});

在php文件中,

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

答案 3 :(得分:0)

尝试,

    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}

您将获得有关jquery ajax here

的更多信息

答案 4 :(得分:0)

您只在数据字符串中传递一个div值。传递所有这些值: -

$('#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);
     }
  });
});

答案 5 :(得分:0)

$.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);
        }
    });
});

答案 6 :(得分:0)

首先,您可以以不同的方式存储数据(在数组中),如下所示:

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

然后,您可以简单地将此数组作为数据对象传递给ajax请求,如下所示:

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

但是,如果使用此方法,则必须确保在PHP中循环$_POST['slider_values'],因为它现在是一个数组而不是字符串。这很简单:

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