Userabhängige Ausgabe aus DB

Daijin

Mitglied
Hallo zusammen,

Ich (blutiger ASP.NET-Anfänger) bastele grad an einem Schwarzen Brett fürs Intranet, die Beiträge werden in einer Access Datenbank gespeichert.

Ich versuche es einzurichten,
dass User anhand ihres Accounts erkannt werden und nur bei von ihnen verfassten Beiträgen das Recht erhalten, diese zu editiern bzw. zu löschen.

Frage: Wie vergleiche ich den Usernamen aus der DB mit dem des Zugreifenden, und wie erteile ich dann edit/ldelete-Rechte?

Danke schonmal... :)
 
Hallo,

wenn sich die User einloggen, speicherst du den usernamen/die UserID in einer Session (nicht das Passwort speichern .. ;) ).

Wenn der User dann einen Beitrag ansieht überprüfst du ob er editieren darf (ID desjenigen der den Beitrag verfasst hat, mit der ID in der SessionVariable vergleichen), wenn es dieselbe ID ist, zeigst du den Link zum editieren.

Und vor verarbeitung der Daten, bevor die Werte verändert werden, machst nochmal eine Überprüfung. Es könnte ja jemand den Link erraten.

So geht es u.a. im Prinzip.

Mfg,
Alexander
 
Hi,

beim Einloggen speicherst Du o.g. Session --> Session("UserID") = ....

Dann speicherst Du bei jedem Beitrag in das Feld UserID Deiner Postingtabelle diese ID mit. So und dann kannst Du ja abfragen.... Es kommt auch drauf an, wie Du die Postings ausliest. In einem Repeater? Inline-Code und While-Schleife?
 
oki, das Prinzip ist klar.
Den User hab ich auch identifiziert, jetzt hab ich noch ein kleines codetechnisches Problem:

Wie kann ich eine einzelne Zeile aus einer DB auslesen, dem User zum bearbeiten geben und dann geändert wieder in die DB schreiben?

Vielleicht hat da jemand ein kleines Bsp. oder so....

Merci schonmal.. :)
 
Die Datenbank hat mehrer Spalten, für Name, Titel des Eintrags, Eintrag usw.
Und der berechtigte User soll seine eigenen Beiträge editieren können, also praktisch die Zeilen der Datenbank, in denen in der Spalte "Username" sein eigener auftaucht.
Es geht nur um Text.

Ich habs nur bisher nicht geschafft, eben nicht die ganze DB auszugeben sondern nur den gewünschten Teil, nämlich die o.g. eigenen Beiträge.



(verdammt, es ist so schwierig sich auszudrücken wenn man praktisch keine Ahnung hat... ;) )
 
Hi,

achso. Naja das kommt auch drauf an, wie du die Postings ausgibst. Ich nehme mal an in einer While-Schleife. Doch selbst, wenn Du einen Repeater o.ä. hast, hast Du ja automatisch die ID des Postings dabei. Also Selectest Du die Abfrage bei Druck auf Deinen "Edit"-Button nach UserID und PostingID. Entweder per Linkbutton oder am einfachsten ein neues Usercontrol <a href="seite.aspx?userID=5&postingID=7, wobei 7 einfach aus (wenn es denn eine while-schleife ist) MyReader.Item("id")
 

Neue Beiträge

Zurück