2010-11-16 94 views
1

Je dois répondre à la question. Sur mon site Web, j'ai un formulaire d'inscription qui, une fois soumis, écrit les données dans une base de données. L'adresse fournie par l'utilisateur est utilisée pour afficher ses informations sur google maps (ville, état, pays ... pas de lieu spécifique). Tout apparaît instantanément sur google maps, mais je crains que quelque chose ne soit visible sur ce site.Empêcher d'écrire en SQL jusqu'à l'approbation de l'administrateur

Dites quelqu'un soumet quelque chose sur le formulaire ... comme first_name "Seymour" last_name "Butts". Évidemment, je ne veux pas qu'un marqueur soit ajouté indiquant l'emplacement de Seymour Butts. Y a-t-il un moyen de soumettre un formulaire, de le faire envoyer à un administrateur désigné pour approbation et, une fois approuvé, de l'écrire ensuite dans la base de données SQL? Je pense que ce serait la meilleure façon de le faire ... Je suis ouvert aux suggestions !!!!

Répondre

1

Vous pouvez l'ajouter à une table intermédiaire, par exemple une table "WaitingForApproval".

Ensuite, vous pouvez écrire un outil d'administration listant le contenu de cette table avec chaque élément ayant un bouton «Approuver» à côté de lui, ce qui déclencherait l'insertion dans la table réelle.

+0

Cela a du sens ... et il ne semble pas que ce serait trop difficile. Eh bien, du moins jusqu'à ce que j'essaie d '"approuver" à partir de l'outil d'administration ... parce que j'aurais l'option de "désapprouver". – Jeremy

+0

Sachez de tout ce qui est démo'd dehors là que je peux me pencher sur pourquoi j'essaye d'écrire ceci? Doute, je vais trouver tout ce qui est mis en place ... il va probablement falloir y aller petit à petit. – Jeremy

+0

Nyaa, il suffit de copier la table d'origine et laissez votre bouton Approuver faire 'INSERT INTO OtherTable SELECT * FROM WaitTable WHERE id = ... SUPPRIMER FROM WaitTable WHERE id = ...'. Assez simple. La réponse de Stu est également logique, cela dépend si vous voulez que les éléments non approuvés soient dans votre vraie table ou non. Quand il y a beaucoup de mauvais éléments ajoutés et que les administrateurs sont paresseux, cela pourrait obstruer votre table. Sinon, il n'y a pas de réelle différence, vous pouvez choisir l'un ou l'autre chemin à parcourir. – thomaspaulb

3

Ajoutez un champ au tableau dans lequel vous écrivez pour indiquer si l'élément a été approuvé ou non. Vous pouvez ensuite interroger la table à la recherche d'espaces pour voir quels éléments doivent être approuvés, et interroger les éléments approuvés pour afficher uniquement les éléments non-Butts.

+0

Je suis d'accord avec Stu, ajoutez une colonne à votre table appelée isApproved. Lorsque vous chargez votre carte, vous pouvez simplement charger les cartes approuvées si vous le souhaitez. – Gage

+0

Assez simple ... On dirait que ce serait le moyen le plus simple d'aller. – Jeremy