これは私がやりたいことです:
ドロップ可能な div にドロップされたときにドラッグ可能な div に関連付けられたデータを取得し、PHP を使用してそのデータを MySQL データベースに保存したいと考えています。
単一のドロップ可能な div にドロップされる複数のドラッグ可能な div があることに注意してください。
また、データはすぐには保存されません。すべての div がドラッグされると、ボタンをクリックするだけで保存されます。
これはどのように達成できますか?
アプリケーションに AJAX リクエストを送信するには、jQuery または別の JS ツール / フレームワークを使用する必要があります。divId、userId、positionId などのデータを受け取るインターフェイスを構築します。各ユーザーに対してこれを許可すると、アプリケーションのセキュリティが影響を受けるため、userId を使用してセッションを確認する必要があることに注意してください。JavaScript スクリプトと通信するには、JSON (json_encode FTW!) を返す必要があります。
データベース:
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
}
}
});