Premium-Feature zu Login hinzufügen [Frage]

  • VB.NET

Es gibt 48 Antworten in diesem Thema. Der letzte Beitrag () ist von Trade.

    Premium-Feature zu Login hinzufügen [Frage]

    Hallöchen, Liebe Community, und zwar hab ich mal so ne frage, ich hab ein Login-Register usw mit MYSQL und möchte im Programm sowas wie Premium einbauen, das heißt wenn z.b in Datenbank so steht



    Benutzer Password Premium
    Thirty Test 0


    soll für dem der Button im Programm halt nicht verfügbar sein steht aber

    Benutzer Password Premium
    Thirty Test 1

    meine Datenbank

    VB.NET-Quellcode

    1. CREATE TABLE `login` (
    2. `ID` INT( 255 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    3. `Benutzername` VARCHAR( 255 ) NOT NULL ,
    4. `Passwort` VARCHAR( 255 ) NOT NULL
    5. ) ENGINE = MYISAM ;


    soll der Button für dem Benutzer Aktiviert sein kann mir da wer Helfen?

    braucht ihr mehr Information einfach rein schreiben oder Skype(mtazocker2000)

    Verschoben und Threadtitel angepasst, da der alte zu allgemein war. ~Trade

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Trade“ ()

    Hallo @Thirty?!

    Warte, ich kram' schnell meine Kristallkugel raus. *Kristallkugel raus hol*
    "Fidibus Walburgikus! Kristallkugel, zeig mir die Antwort!" - Hm...kann iwie nix erkennen.

    Eine genauere Problembeschreibung wäre hilfreich. Graut der Button nicht aus? Kannst du die Einträge in der Datenbank nicht lesen?
    Wenn du uns mehr Infos geben könntest, können wir dir villeicht auch helfen

    Lg Radinator

    Edit: Bzw zeig doch bitte mal her, was du bereits gecoded hast
    In general (across programming languages), a pointer is a number that represents a physical location in memory. A nullpointer is (almost always) one that points to 0, and is widely recognized as "not pointing to anything". Since systems have different amounts of supported memory, it doesn't always take the same number of bytes to hold that number, so we call a "native size integer" one that can hold a pointer on any particular system. - Sam Harwell

    Thirty? schrieb:

    kann mir da wer Helfen?

    Ja.

    Ich wette damit bist du nicht zufrieden.
    Wir auch nicht.

    Natürlich könnte ich dir nun Beispielcode von oben bis unten hinkleistern, ich hab aber keine Ahnung ob der mit deiner benutzten MySQL Library überhaupt kompatibel ist.
    Von daher zeig uns, wie deine Form aufgebaut ist, Zeig uns, wie du deine DB erreichst, und was du bisher versucht hast. Den rest erledigen wir dann mit dir ;)

    Thirty? schrieb:

    Ich möchte doch nur das bitte meine Frage Beantwortet wird
    Die einzige Frage in deinem Post ist

    Thirty? schrieb:

    kann mir da wer Helfen?
    Die Antwort ist: Nein.

    Jedenfalls nicht, bevor du dich einigermassen verständlich geäusserst hast, wo das Problem liegt.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --

    Thirty? schrieb:

    Ich möchte doch nur das bitte meine Frage Beantwortet wird

    Und wir möchten, daß du die Fragen ausreichend konkret stellst ! ;)

    edit:
    Dieser Thread, ist mal wieder zum Haare raufen ! Im falschen Forum gepostet, mieser Threadtitle und nun stures Verhalten !
    Du möchtest doch was von uns ! Also gib dir gefälligst etwas Mühe !

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Pasta“ ()

    Hmm - also gut, die Frage ist nicht super-präzise, aber ist doch erkennbar, was gewünscht ist: Je nach Inhalt eines Feldes einer Db-Tabelle soll ein Button sichtbar sein oder nicht.

    Ich setze mal voraus, du weißt wie man die Daten abruft, dann brauchst du ja nur sowas coden:

    VB.NET-Quellcode

    1. Button1.Visible = datenInhalt = 1
    Das sieht vlt. komisch aus, funktioniert aber. datenInhalt = 1 ist ein Vergleich, der True oder False ergibt, und das wird dann an Button.Visible zugewiesen, und dann ist der Button visible oder nicht.

    Datenbank/VB Fragen/Problem

    Hallöle, hatte schonmal nen Thread, aber der hier sollte besser sein mir reichlich mehr Informationen ! :)
    Joa, und warum dann nicht den weiter benutzen? Der hier ist noch nicht zu Ende. In dieses Thema verschoben. ~Trade

    Also, mein Problem/Frage ist

    Ich hab nen Login-Register wo auch alles Perfekt Funktioniert nun, möchte ich sozusagen nen Admin Account machen das heißt so sieht meine

    Datenbank aus:
    (CODE)

    VB.NET-Quellcode

    1. CREATE TABLE `login` (
    2. `ID` INT( 255 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    3. `Benutzername` VARCHAR( 255 ) NOT NULL ,
    4. `Passwort` VARCHAR( 255 ) NOT NULL
    5. ) ENGINE = MYISAM ;



    und in der Datenbank:

    SIEHE ANHANG


    und so in VB

    Login:

    VB.NET-Quellcode

    1. Dim lesen As MySqlLib3.MySqlLib.ResultCollection = db.Query("SELECT * FROM login WHERE Benutzername='" + Replace(usern.Text, " ", "") + "' AND Passwort='" & Replace(pw.Text, " ", "") & "'")
    2. If lesen.Row.Count = 1 Then
    3. Me.Visible = False
    4. Form3.ShowDialog()
    5. Else
    6. MessageBox.Show("Bitte Registrieren")
    7. End If



    Register:

    VB.NET-Quellcode

    1. Dim lesen As MySqlLib.ResultCollection = db.Query("SELECT * FROM login WHERE Benutzername= '" + username.Text & "'")
    2. If lesen.Row.Count = 1 Then
    3. MessageBox.Show("Benutzer Bereits Vorhanden")
    4. Else
    5. db.Query("INSERT INTO login (`Benutzername`,`Passwort`) VALUES ('" & username.Text & "','" & password.Text & "')")
    6. MessageBox.Show("Erfolgreich Registriert")
    7. Form1.Show()
    8. Me.Close()



    Okey, hoffe das war das Nötige an Information und nun nochmal zur Perfektion meiner Frage/Problem



    also die Datenbank sieht ja jetzt so aus

    SIEHE ANHANG


    und ich möchte halt das da noch eine Spalte kommt mit

    Premium und wenn bei dem Benutzer eine 0 Steht hat der im Programm halt kein Zugriff auf dem Erstellten Button
    und wenn da eine 1 Steht das er auf den Button Klicken kann-


    Falls noch mehr Fragen/Informationen benötigt wird, bitte Reinschreiben und nicht meckern mit


    Bluuh, ist nicht Save usw, aber ich bedanke mich jetzt schonmal <3
    Bilder
    • f8edb87182.png

      9,43 kB, 788×165, 101 mal angesehen

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Trade“ ()

    Thirty? schrieb:

    [...]bitte Reinschreiben und nicht meckern mit

    Bluuh, ist nicht Save[sic!] usw[...]
    Okay, haste mir ja auch in Skype schon gesagt gehabt, dass es Dir egal ist, ob jemand Deine Datenbank bzw. Tabelle droppt, dass alle Daten weg sind, oder jemand die Verbindung abgreifen kann, um die Credentials auszulesen.

    Von daher rein zum Thread: Ich verstehe nicht, wo das Problem ist. Schließlich kannst Du einfach den Wert für Premium (0 oder 1) abrufen und es dann so machen, wie ErfinderDesRades beschrieben hat. Wo ist das Problem? Und eine Spalte kannste ja einfach per SQL hinzufügen, wie die anderen auch. Als Typ bietet sich da BOOLEAN bzw. TINYINT(1) an.
    btw: Ich heiße dann beim Testen übrigens Trade'); DROP TABLE login;--.

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:

    Trade schrieb:

    egal ist, ob jemand Deine Datenbank bzw. Tabelle droppt, dass alle Daten weg sind, oder jemand die Verbindung abgreifen kann, um die Credentials auszulesen

    8| Na hoffentlich befinden sich keine personenbezogenen Daten (z.B. eMail-Adressen) in der Datenbank, sonnst wäre das ganze, absolut verantwortungslos !
    in den Button muss gar nix rein. Der wird halt sichtbar oder nicht.

    Sql kann man dir nicht liefern, denn in deiner Datenbank gibts bislang ja garkeine Spalte, die abzurufen wäre.
    bzw Sql hast du doch schon:

    Thirty? schrieb:

    VB.NET-Quellcode

    1. "SELECT * FROM login WHERE Benutzername='" + Replace(usern.Text, " ", "") + "' AND Passwort='" & Replace(pw.Text, " ", "") & "'")
    Select * ruft ja alle Spalten des Datensatzes ab - wenn es die Premium-Spalte gäbe, würde die dabei ja mit-abgerufen.
    Einige Beiträge gelöscht, um ein Flamewar zu vermeiden.

    Zusammenfassung der gelöschten Beiträge: @Thirty?, du solltest dir wirklich Gedanken um die Datenbanksicherheit machen (was ich durchaus so unterschreiben würde). Der Rest war unfreundlich bzw. Antwort darauf.
    Mit freundlichen Grüßen,
    Thunderbolt
    ernsthaft....es ist doch mein ding ob es Sicher sein soll oder nicht....es tut mir leid wenn es so rüber kam, nur es pisst einfach an! wenn man nach einer Antwort sucht, und leute mit was ganz anderem kommnen!
    Solange es nur deine Daten sind, ist es auch egal (naja ned 100%, aber wurst). Sobald du aber Daten von anderen Personen sammelst und die nicht sicher aufbewahrst, hat dich das BDSG am Schlafittchen. Und des is kein Spaß.

    Deshalb: Auch wenn das nur ein Spaß projekt für dich ist, sorge bitte zumindest für ein Mindestmaß an Datensicherung (SQL injection und damit verbunden das löschen der Datenbank tabelle)

    Sieh das bitte NICHT als persönlichen Angriff, ich möchte dir nur ein paar Tips geben, wie du ein besserer Programmierer wirst.

    Lg Radinator
    In general (across programming languages), a pointer is a number that represents a physical location in memory. A nullpointer is (almost always) one that points to 0, and is widely recognized as "not pointing to anything". Since systems have different amounts of supported memory, it doesn't always take the same number of bytes to hold that number, so we call a "native size integer" one that can hold a pointer on any particular system. - Sam Harwell