Maison >développement back-end >tutoriel php >L'interface PHP implémente un exemple de fonction de tri par glisser-déposer
Cet article présente principalement les exemples de fonction de tri par glisser-déposer implémentées par l'interface PHP. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer
Comment pouvons-nousApprendre la fonction de tri par glisser-déposer de liste, mais comment gérer l'interface back-end est un problème complexe. Comment atteindre la plus grande efficacité
Analyser d'abord Dans un scénario, s'il y a une page avec dix éléments de données, ce qu'on appelle le glisser signifie faire glisser les dix éléments de données d'avant en arrière, mais chaque glissement affectera d'autres données Pour Par exemple, si vous faites glisser la dernière pièce vers l'avant, alors le Kujo suivant se déplacera automatiquement vers l'arrière, et vice versa, eh bien~~~
et chaque personne change le nombre de table et de chaise des autres personnes avant, donc il n'y a pas besoin de penser à combien à ajouter au classement.
//$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]; } //保存到数据库省略}Recommandations associées :
Implémentation de l'interface PHP du mode de développement de compte public WeChat
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!