【问题标题】:How to pass mutiple values from ajax to php file如何将多个值从ajax传递到php文件
【发布时间】:2013-06-07 06:06:19
【问题描述】:

我有 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'];
}?>

【问题讨论】:

标签: php ajax post multiple-value


【解决方案1】:

值由&amp; 分隔,就像在 URL 中一样:

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

【讨论】:

  • 将slider2_value与&也分开)
【解决方案2】:
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']; 

?>

【讨论】:

    【解决方案3】:
    $('#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>';
    }
    ?>
    

    【讨论】:

      【解决方案4】:

      试试,

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

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

      您将了解更多关于 jquery ajax here

      【讨论】:

        【解决方案5】:

        您只在数据字符串中传递了一个 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);
             }
          });
        });
        

        【讨论】:

          【解决方案6】:
          $.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);
                  }
              });
          });
          

          【讨论】:

            【解决方案7】:

            首先,您可以像这样以不同的方式(在数组中)存储数据:

            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
            }
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2020-04-09
              • 2017-11-16
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多