이 글은 주로 PHP 인터페이스로 구현된 드래그 앤 드롭 정렬 기능의 예를 소개합니다. 이제 특정 참조 값을 공유합니다.
목록 드래그 앤 드롭 정렬 기능이 있지만 백엔드 인터페이스를 처리하는 방법은 얽힌 문제입니다. 가장 높은 효율성을 달성하는 방법은 무엇입니까? 먼저 10개의 데이터가 있는 페이지가 있다면 다음과 같습니다. 드래그라고 하는 것은 이 10개의 데이터 사이를 앞뒤로 드래그하는 것입니다. 뒤로 드래그할 때마다 다른 데이터에 영향을 미칩니다.예를 들어 마지막 항목을 맨 앞으로 드래그하면 다음 9개의 항목이 자동으로 뒤로 이동합니다. , 그리고 그 반대도 마찬가지죠~~ 먼저 상상해 보세요. 정렬 번호는 고정되어 있습니다. 네, 의자가 10개씩 거기에 고정되어 있고, 그 위에 있는 사람이 이동하므로 데이터에 영향을 미치지 않습니다. 다른 페이지에그리고 각 사람은 이전에 다른 사람의 테이블과 의자를 변경하므로 순위에 몇 개의 숫자를 추가해야 할지 고민할 필요가 없습니다. 인터페이스 디자인
://$ids 这十条数据的id集合,逗号隔开的字符串//$oldIndex 原始位置,从0开始算//$newIndex 要拖动的位置function dragSort($ids,$oldIndex,$newIndex){ //保证查找出来的数据跟前台提交的顺序一致,这里要order by field //id 主键 sort 排序值 $sql = "select id,sort from 表名字 where id in ($ids) order by field(id, " . $ids . ") "; $list = "这里省略,就是去数据库找嘛"; //id集合 $idArr = []; //排序集合 $sortArr = []; foreach ($list as $item) { $idArr[] = $item['id']; $sortArr[] = $item['sort']; } //记录要拖动的id $oldValue = $idArr[$oldIndex]; //删除这个要拖动的id unset($idArr[$oldIndex]); //插入新的位置,并自动移位 array_splice($idArr, $newIndex, 0, $oldValue); //重新设置排序 $set = []; for ($i = 0; $i < count($idArr); $i++) { $set[$i]['id'] = $idArr[$i]; $set[$i]['sort'] = $sortArr[$i]; } //保存到数据库省略}
WeChat 공개 계정 개발 모드 PHP 인터페이스 구현
위 내용은 PHP 인터페이스는 드래그 앤 드롭 정렬 기능 예제를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!