无法通过Ajax $ .get()传递多个值

时间:2012-02-22 06:22:28

标签: php ajax jquery

希望你们都好。我在通过$.get()传递多个参数时遇到了一些问题。

我想通过coord.left传递可拖动对象的“coord.top”和“$.get()”坐标,这样我就可以将这些坐标存储到我的数据库中。 当我传递单个参数时,它正常工作但在传递多个值时面临问题 这是我的代码:

.mouseup(function(){

    var coords=[];
    var coord = $(this).position();
    var item={ coordTop:  coord.top, coordLeft: coord.left  };
    coords.push(item);
    var order = { coords: coords };
$.get('updatecoords.php', 'left='+coord.left, 'top='+coord.top function(response){
            alert("Data Loaded: " + coord.left + coord.top);
                    }); 
            });

    });

这是我的updatecoords.php文件,我将这些值推送到数据库中:

    $xleft = $_GET["left"];
    $ytop = $_GET["top"];

    //update query
    $sql = "UPDATE coords SET x_pos = '$xleft', y_pos = '$ytop'";

3 个答案:

答案 0 :(得分:0)

我很确定它应该是"left="+coord.left+"&top="+coord.top

答案 1 :(得分:0)

关于什么

$.get('updatecoords.php', {left=coord.left, top=coord.top}, function(response){
            alert("Data Loaded: " + coord.left + coord.top);
                    });

 $.get('updatecoords.php', {"left="+coord.left+"&top="+coord.top}, function(response){
                alert("Data Loaded: " + coord.left + coord.top);
                        });

答案 2 :(得分:0)

我还建议像这样设置$ sql var:

$sql = "UPDATE coords SET `x_pos` = '" . $xleft . "', `y_pos` = '" . $ytop . "'";

将变量置于简单引号内通常是一种不好的做法。