Question

J'ai une table mysql de la forme

entryID (PK), UserID, entryName

Chaque utilisateur (tel que défini par son utilisateur) peut créer n'importe quel nombre d'entrées dans ce tableau, mais pour chaque utilisateur, le nom d'entrée doit être unique. Je voudrais permettre aux utilisateurs de modifier tous leurs noms d'entrée à la fois. En tant que tel, je présenterai à l'utilisateur un formulaire avec plusieurs champs d'entrée qu'il peut modifier.

Le problème est lorsqu'il essaie de s'engager dans la base de données. Je ne peux pas simplement mettre à jour la ligne par ligne comme cas:

1, 1, Entry1
2, 1, Entry2

qui est devenu

1, 1, Entry2
2, 1, Entry3

provoquerait une erreur lorsque vous essayez de renommer l'entrée 1 vers l'entrée2. Actuellement, je lis toutes les lignes avec le Gitud UserID, puis je les supprime et recréent chaque ligne. Cela marche. Le problème avec cette méthode, cependant, est que si un utilisateur parvient à provoquer une erreur dans mon script, toutes ses entrées sont supprimées ... et perdues. Et c'est une mauvaise chose. Comment résoudrait-on cela?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top