从JQuery UI获取数据可拖动并存储在数据库中

时间:2012-10-18 18:02:47

标签: php mysql jquery-ui

这就是我想要做的事情:

我想把可拖动div上的data与我的可拖放div相关联,然后使用PHP将数据存储在MySQL数据库中。

请注意,将有多个可拖动的div将被放置在一个可放置的div上。

此外,数据不会立即存储;当所有div都被拖动时,它们将在点击按钮时存储。

如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

您应该使用jQuery或其他JS工具/框架向您的应用程序发出AJAX请求。构建一个接收数据的接口,例如divId和userId以及positionId。请注意,您必须使用userId检查会话,因为如果您允许每个用户使用此应用程序安全性,则会受到影响。 你应该返回JSON(json_encode FTW!)来与你的javascript脚本进行通信。

<强>数据库:

id, userId, divId, positionId
1, 1, 1, 2
1, 1, 2, 1

<强> PHP:

<?php
$positionId = $_GET['positionId'];
$divId      = $_GET['divId'];
$userId     = $_GET['userId']; // make sure that this userId is equal to your session

// init db
// check for existing entity (e.g. the div already exist for this user)
$db->query("INSERT INTO position SET userId = :userId, divId = :divId, positionId = :positionId");
// execute
json_encode(array('success' => true));

<强> JS:

$.ajax({
    url: '/your_script.php',
    params: {
        userId: 1,
        positionId: 1,
        divId: 1
    },
    dataType: 'json',
    success: function(response) {
        if (response.success) {
            // display feedback
        }
    }
});