Bonjour a tous,
Voila j'ai un table avec un champ sort_order UNIQUE.
Je souhaiterais pouvoir changer l'order de deux ligne en inversant leur valeur.
j'avais donc penser réaliser deux update a la suite.
Mais le probleme c'est que la premier requete ne peut pas se réaliser car du coup deux valeur seront identique?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 tep_db_query("update " . TABLE_CAROUSEL_INDEX . " set sort_order = sort_order - 1 where carousel_index_id = '" . (int)$HTTP_GET_VARS['ci_id'] . "'"); tep_db_query("update " . TABLE_CAROUSEL_INDEX . " set sort_order = sort_order + 1 where carousel_index_id = '" . (int)$audessus['classification_id'] . "'");
du coup comment faire?
j'ai bien penser faire
Mais c'est vraiment pas propre comme developpement. je pense qu'il doit exister un soluce plus adapté
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 tep_db_query("update " . TABLE_CAROUSEL_INDEX . " set sort_order = sort_order +1000 where carousel_index_id = '" . (int)$HTTP_GET_VARS['ci_id'] . "'"); tep_db_query("update " . TABLE_CAROUSEL_INDEX . " set sort_order = sort_order + 1 where carousel_index_id = '" . (int)$audessus['classification_id'] . "'"); tep_db_query("update " . TABLE_CAROUSEL_INDEX . " set sort_order = sort_order -1001 where carousel_index_id = '" . (int)$HTTP_GET_VARS['ci_id'] . "'");
Merci d'avance
Partager