2010-03-30 2 views
1
sélectionné

Je programme quelque chose comme e-mail pour mes utilisateurs. Je veux permettre aux gens de sélectionner des lettres et de les supprimer. Comment puis-je le faire? Je ne peux pas imaginer comment je peux le faire seulement avec une requête MySQL. Est-ce même possible?sélectionner et supprimer

+0

Je pense que nous allons avoir besoin d'en savoir plus sur ce que vous essayez d'accomplir. Peut-être une meilleure description aiderait avec des exemples si possible. –

+0

Pouvez-vous reformuler votre question? Je ne comprends pas un seul mot. –

+1

@Pekka: mes centimes sur un client de messagerie Web comme Gmail/Hotmail/etc. Mais sa question est après tout vraiment trop large. On dirait qu'il a été jeté dans un trou profond et qu'il a essayé de s'appuyer sur les autres pour expliquer des choses et/ou faire le travail pour lui. @Donator: Je suggère d'apprendre tous les concepts séparés un par un, étape par étape. D'abord obtenir HTML correct. Puis CSS. Puis JS. Alors PHP. Puis SQL. Puis Mail. Ensuite, faites le calcul. – BalusC

Répondre

2

Si par "select" et "delete" vous voulez dire les commandes SQL SELECT et DELETE, vous n'avez pas besoin de sélectionner et de supprimer en même temps. Commencez par exécuter un SELECT pour afficher les courriels et permettre à l'utilisateur de choisir les courriels qu'il souhaite supprimer. Ensuite, utilisez les identifiants des e-mails (généralement un champ masqué) pour exécuter un DELETE avec un WHERE id IN (..., ..., ...).

+0

C'est absolument ce dont j'avais besoin. Merci beaucoup. ;) –

+1

Je pense que le commentaire de Jesse mérite d'être répété ici: n'oubliez pas de vérifier qu'un utilisateur ne peut effacer que ses propres emails. Ne faites pas aveuglément confiance à la liste d'identifiants de l'utilisateur - appliquez-la en ajoutant une vérification appropriée dans la clause WHERE. –

0

Il faut une requête à la liste leur e-mail, mais une fois que vous obtenez une liste d'identifiants uniques que l'utilisateur a sélectionné, vous pouvez exécuter une requête de suppression par e-mail.

1

DELETE $table_name WHERE id in ($ids) devrait faire votre suppression. en un coup. donc vous devez obtenir tous les identifiants pour les enregistrements qui, en supposant, sont en quelque sorte codés dans votre code HTML dans le cadre des attributs id, class ou value pour les éléments.

+0

Cela fonctionnera, mais il est difficile de paramétrer correctement cette requête pour éviter les problèmes d'injection SQL. Si vous allez sur cette route, assurez-vous de désinfecter les entrées (assurez-vous que chaque valeur dans ids est le bon type) et n'oubliez pas de restreindre la requête de suppression sur le bon utilisateur afin que les utilisateurs ne suppriment pas leurs emails. Quelque chose comme: SUPPRIMER FROM Email O WH Email.id IN ($ ids) ET Email.user = $ username –

+0

Jesse, je ferai la même chose avec SELECT, en utilisant WHERE IN. Ce n'est pas un problème de vérifier si la personne supprime ses propres emails ou pas :) –

Questions connexes