Dieser Artikel stellt hauptsächlich die von der PHP-Schnittstelle implementierten Drag-and-Drop-Sortierfunktionen vor. Jetzt kann ich ihn mit Ihnen teilen.
Wie Machen wir Lernen Sie die Listensortierfunktion, aber wie man mit der Back-End-Schnittstelle umgeht, ist es ein kompliziertes Problem, wie man die höchste Effizienz erreicht >Zuerst analysieren Wenn in einem Szenario eine Seite mit zehn Datenteilen vorhanden ist, bedeutet das sogenannte Ziehen, dass die zehn Datenteile hin und her gezogen werden, aber jedes Ziehen wirkt sich auf andere Daten aus
Zum Beispiel: Wenn Sie das letzte Stück nach vorne ziehen, bewegt sich das folgende Kujo automatisch nach hinten und umgekehrt, na ja~~~
Stellen Sie sich zunächst vor, dass die Sortiernummer festgelegt ist, genau wie es zehn Stühle gibt, und Jeder Stuhl ist dort fixiert, und die oben genannten Personen, die sich bewegen, haben keinen Einfluss auf die Daten auf anderen Seiten
//$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]; } //保存到数据库省略}
PHP-Schnittstellenimplementierung im WeChat-Entwicklungsmodus für öffentliche Konten
Das obige ist der detaillierte Inhalt vonBeispiel für die PHP-Schnittstellenimplementierung einer Drag-and-Drop-Sortierfunktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!