【问题标题】:Draggable div won't save position into database using ajax and php可拖动的 div 不会使用 ajax 和 php 将位置保存到数据库中
【发布时间】:2014-01-18 07:07:20
【问题描述】:

我已经尝试解决这个问题三天了。我正在尝试创建一个网站,人们可以在其中拖放模板的布局以个性化他们的网页,这意味着我正在使用 jquery 和 ajax 以使网页中的元素可拖动。我正在使用的代码已经很好并且没有遇到任何错误,我的问题是可拖动 div 的位置不会保存在我的数据库中。感谢您的帮助,祝您有美好的一天。

这是我的拖放和保存 .js 的代码

<script type="text/javascript">
$(document).ready(function() {
$( "#col1" ).draggable({ 
stack: "#col1",
  stop: function(event, ui) {
      var pos_x = ui.offset.left;
      var pos_y = ui.offset.top;
      var username = ui.helper.data('username');

      //Do the ajax call to the server
      $.ajax({
          type: "POST",
          url: "coordsave.php",
          data: {x: pos_x, y: pos_y, username: username}
        }).done(function( msg ) {
          alert( "Data Saved: " + msg );
        }); 
  }
 });
});
</script>

这是我对 PHP 中查询函数的更新 $x_coord=$_POST["x"]; $y_coord=$_POST["y"]; $username=$_POST['username'];

//Setup our Query
$sql = "UPDATE $coords SET x_pos='$x_coord', y_pos='$y_coord' WHERE user_uname =     '$username'";

//Execute our Query
if (mysql_query($sql)) {
      echo "success $x_coord $y_coord";
     }
    else {
    die("Error updating Coords :".mysql_error());   
}

?>

【问题讨论】:

    标签: jquery ajax jquery-ui draggable


    【解决方案1】:
    1. 你的数据库有连接吗?
    2. 检查你的查询文本,也许你有空值

      $sql = "你的查询"; 回声 $sql;

    编辑1:

    请参阅此处.data() 的文档并首先使用双引号,其次您是否有与 DOM 元素中的键“用户名”相关联的任何值?

    【讨论】:

    • 是的。用户名部分为空。我想从我的网址中使用 $_GET['username'] 获取用户名变量,但它不起作用。 x 和 y pos 正在返回除用户名部分以外的值
    • 你将什么传递给函数 .data()? “用户名”是键还是对象?
    • 想通了。我使用 location.search 来获取 url 中的用户名并将其作为 ID 进行验证。感谢所有的帮助!
    • 如果您通过我的回答找到了您的问题的解决方案或答案,请接受它以解决您的问题。 how stackoverflow works
    猜你喜欢
    • 1970-01-01
    • 2013-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-15
    • 1970-01-01
    相关资源
    最近更新 更多