Member Bereich, ist mein Wissen richtig?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Member Bereich, ist mein Wissen richtig?

    Hallo zusammen.

    Ich bin kein programmierer, ich möchte das auch nicht geschäftlich machen, mein Bereich ist die Grafik. Ich habe in meiner Homepage einen Member Button.
    Wenn man Ihn anklickt soll ein Pass Eingabe Popoup kommen. Jetzt gibt es zwei verschiedene userass je nach eingabe wird der User auf eine andere Seite weitergeleitet.

    Heute habe ich den ganzen Tag gelesen und gelesen. Nur einen Teil habe ich verstanden. Man sagt das mit MySQL viel flexibler und einfach sollche Dinge erledigen soll.

    Also bei meiner Homepage im Host Controll Panel habe ich gefunden wo ich Datenbanken erstellen kann.
    Ich habe jetzt zwei neue Datenbanken gemacht einmal Privat + Business.
    • Also mit diesen zwei Datenbanken sollten nun zwei Logins:Pass für die zwei verschiedene Seiten sein?
    • Muss ich jetzt bei jeder Datenbank einen speziellen SQL-Befehl einfügen?
    • Muss ich sonst noch was im MySQLAdmin machen mit den Datenbanken?
    • Ich habe da in meinem Host Control Panel gesehen dass schon 3 Datenbanken vorgegeben sind: _agbook1 , _xmb1 , _xmb2 ? Für was sind Die ist das irgendwie standard? Bei diesen drei Datenbanken sehe ich auch einen Connection Strings in php + Perl, dies ist wahrscheinlich der code wie ich die Datenbank von der Webseite aus zugreifen kann? Stimmt das? Bei meinen neuen Datenbanken sehe ich noch gar nichts.
    • Jetzt habe ich auch gelesen, das ich mit den Befehlen ['PHP_AUTH_USER'] und $_SERVER['PHP_AUTH_PW'] das popup für die User und Pass eingabe aufrufen kann? Stimmt das? Jetz fehlt mir also nur noch einen .php code auf den ich vom MEMBER-BUTTON verlinken soll. Mit dem wird dann das Popup Pass-Eingabefeld geöffnet und die zwei unterschiedliche User:Pass auf eine bestimmte Seite weitergeleitet. Oder?


    Ich danke im voraus für das interesse meines posting und für die Hilfe, Mühe und Tipps!

    Ikonoklast

  • #2
    Re: Member Bereich, ist mein Wissen richtig?

    OffTopic:
    das verschiebe ich mal zum brainstorming, vielleicht hat da ja jemand lust, sich dazu zu äußern. (/me nicht, weil mir das nach einer zu langwierigen sache aussieht.)
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Okidoki!

      Kommentar


      • #4
        jajaja, usw. ist alles schön und nett und wenn du es so hinbekommst, ist gut XD

        2 Anmerkungen:
        1. Die schon vorhandenen Tabellen/Datenbanken würd ich einfach mal lassen, sind auf jeden Fall kein Standart, aber sie stören ja nicht ^^
        2. Das einloggen mit diesem Popup-Fenster ist, banal gesagt, was für den Arsch. Da sind sicherheitslücken ohne Ende, das Ausloggen funktioniert meines Wissens auch nicht richtig und eigentlich ist das gesamte System was für die Tonne. Da würd ich dir lieber zu einer Seite mit nem Formular raten und dann zum Sessionhandling.
        Wenn du schon das mit den Popup-Fensterchen verstanden hast, dann sollte das mit einem Formular erst recht kein Problem sein und zum Thema sessions empfehle ich dir die Manual www.php.net/manual/de oder die Forensuche, oder irgendwelche Tutorials oder ähnliches, Lesestoff gibt es zu dem Thema genug. Wenn du immernoch nicht klar kommst (wovon ich jetzt mal nicht ausgehe), kannste ja wieder posten.

        btw. komm nicht auf die Idee irgendwas mit der Funktion session_register oder so zu machen, sind ziemlich nutzlos.


        ....na gut, weil ich grad gute Laune hab eine kurze Einführung in Sessions. Also, eine Session ist eine Datei, gespeichert auf dem Server, unter einer Session-ID. In der Datei werden dann Variablen gespeichert (sind also nur durch Skripte veränderbar, nicht durch den User) und die Session-ID wird per Cookie manchmal auch URL übertragen, aber das hat dich eigentlich relativ wenig zu interessieren, weil das von PHP alles gemacht wird. Du musst nur auf jeder Seite, wo du eben auf diese Session-Variablen zugreifen musst (also alle in deinem Member-Bereich und die einloggen-Seite) ganz oben, vor jeglicher Ausgabe die Funktion
        PHP-Code:
        session_start() 
        aufrufen. Damit wird dir das gesamte Sessionhandling abgenommen.
        So, ab da kannst du dann das Array $_SESSION verwenden.

        Bei der einloggen-Seite machst du dann z.B. oben ein session_start(), prüfst dann die übergebenen Werte und wenn der Username existiert, das Passwort das Richtige ist, dann sagst du z.B. $_SESSION['user_id'] = $result['id']; und wenn du dann auf der nächsten Seite diese ID wieder brauchst, mit der sich der User angemeldet hat (es ist praktisch die ID zu speichern, und nicht den Usernamen, da der Primary-Key in deiner Datenbank ja eigentlich meist auch auf der ID liegen sollte), dann tippst du oben auf der Seite wieder session_start() und dann unten z.B. echo $_SESSION['user_id'];

        Das wäre eine vereinfachte, ganz kurze Einführung in Sessions. Formular-übergaben, hab ich jetzt keinen Bock zu, die findest du eh an jeder Straßenecke XD


        Achja, wie soll denn die Datenbank aussehen....das war ja auch eine Frage, wenn ich dich richtig verstanden hab, nicht?
        Also am besten fügst du da eben eine User_ID(int sollte reichen, +Auto_increment) ein, und legst einen Index auf die Spalte, und zwar einen Primary_index. Das hat den Vorteil, dass die ID in dem Index ist und somit ein Eintrag, wenn du ihn anhand der ID suchst schneller gefunden werden kann, zum zweiten dass automatisch jede ID nur EINMAL vorhanden sein kann......zwei User mit derselben ID wäre auch ziemlich blöd, nicht? Dann könnte nämlich ein User auf die Sachen eines andere zugreifen...Account-Teilung XD
        So, dann vielleicht noch einen Benutzernamen (varchar 50-Spalte sollte reichen) und eine Spalte für die E-Mail-Adresse (auch varchar, 50-100...irgendwas...kann zur Not später auch noch geändert werden). So wenn du jetzt weißt was ich meine und wovon ich geredet hab, ist gut, ansonsten empfehle ich dir z.B. www.schattenbaum.net/php (sollte richtig sein der Link....denke ich), oder die Manual von www.phpmyadmin.net, um den Umgang mit dem "Programm" zu lernen. Sobald du das alles drin hast, kannst du dich an das einloggen-Skript machen.
        Das sieht dann mehr oder weniger wie folgt aus
        PHP-Code:
        session_start();
        $result mysql_query("SELECT * FROM user_table WHERE Benutzername LIKE '" 
             
        mysql_real_escape_string(htmlentities($_POST['username'])) . "'");
        if (
        mysql_num_rows($result)!=0)
        {
         
        $row mysql_fetch_assoc($result);
         
        $_SESSION['id'] = $row['id'];

        Kurze Erklärung: Datenbank-Query, der die Reihe sucht, wo der Username gleich dem ist, den der User eingegeben hat. (Die 2 Funktionen sind vorsichtsmaßnahme, bzw. sorgen dafür, dass der User auch Sonderzeichen in seinem Usernamen nutzen kann, Erklärung siehe www.php.net/manual/de, falls noch Fragen sind, meld dich), dann wird geprüft, ob der Username überhaupt existiert hat und wenn ja, dann wird in dem Array der Session die User_ID gespeichert. (Spaltennamen und Tabellenname hab ich jetzt einfach mal festgelegt, aber du sollst das ja eh selbst machen...sind ja nur Beispiele)
        Und das wäre dann ein (SEEEHR einfaches) Login-Skript. Dann bräuchtest du noch ein Anmelde-Skript, und natürlich noch was in deinem Members-Bereich.

        Achja, *nochmal deinen Post gelesen hat*, das ist jetzt nur auf eine Datenbank bezogen. Wie ich deinem Post entnehme, willst du 2 Membersbereiche machen, nicht?
        Da würde ich dir empfehlen, eine weitere Spalte anzulegen in der User_Tabelle, wo du dann speicherst, ob der User Privat oder Business ist und diesen Wert dann beim einloggen auch abfragen und in die Session speichern (das häufigste immer in die Sessions, ansonsten musst du nur für das Privat/Businnes nen Datenbank-Query machen...ziemlich nervig!)

        Und mir kommt grade noch ne Idee.....diese Datenbanken, die schon da sind, könnten die vielleicht mit einem Gästebuch oder ähnlichem zusammenhänge, die du auf der Seite eingerichtet hast, mit irgendeinem Service deines Providers oder ähnliches....nur so als Idee....aber stören tun die ja wirklich nicht ^^



        Ich hoffe das war jetzt hilfreich....(ansonsten hab ich das alles umsonst getippert ;_
        Zuletzt geändert von ghostgambler; 22.11.2004, 15:49.

        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
        Wie man Fragen richtig stellt

        Kommentar


        • #5
          Jetzt möchte ich aber mal auch mein senf dazu geben.

          @ghostgambler Das hast du ja alles schön erklärt.
          Aber warum sagst du ihm nicht die kurzform. :-)

          @Ikonoklast Gehe mal auf google und gebe da "php/QuakeNet" ein.
          Da ist genau das alles beschrieben und du kannst da auch alles gut verstehen.
          Geh dann am besten auf download und du kannst offline immer alles nachlesen.
          Wenn du es wirklich alles selber machen willst, hoffe ich mal, das du ein localhost hast.
          Wenn nicht "xampp-win32-1.4.6-installer"
          Viel spaß.
          Gut geraten ist halb gewußt.

          Kommentar


          • #6
            Auf PHP-Resource.de gibt's da auch ein Tutorial zu:
            Login mit Hilfe von PHP und MySQL
            hopka.net!

            Kommentar


            • #7
              Original geschrieben von martinm79
              @ghostgambler Das hast du ja alles schön erklärt.
              Aber warum sagst du ihm nicht die kurzform. :-)
              Ist immer besser, einiges wichtiges zu wiederholen, damit es mehrere Möglichkeiten gibt es zu verstehen ^^, btw. hatte ich grad nix besseres zutun

              Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

              bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
              Wie man Fragen richtig stellt

              Kommentar


              • #8
                @An alle!

                Zuerst entschuldige ich mich für die verspätete Antwort, ich bin sonst nicht so. Aber ich wurde wirklich verhindert.
                Ich möchte mich herzlich für die mühe bedanken vorallem an "ghostgambler".
                Sehr viel geschrieben und es hat mir jetzt einen gewissen einblick in die ganze Sache gegeben.
                Ja "ghostgambler" die anderen Datenbanken sind vom Guestbook und Forum. Das habe ich herrausgefunden.
                Die wurden beim Hoster automatisch installiert als ich auch automatisch ein Guestbook über den Host Controll Panel installiert habe.

                Also jetzt habe ich sehr viele Stichwörter und weiss wo und wie ich zu den Informationen komme.
                Als erstens werde ich nur einen Login machen mit .htaccess, also nur eine Weiterleitung auf einen Bereich. Das habe ich hingekriegt. In der Zeit werde ich mich mit dem Bereich Datenbanken und Session beschäftigen.

                Danke nochmals und bis bald mal...

                -Ikonoklast

                Edit:

                @Hopka

                Merci für den Link, ist wirklich geil!

                Kommentar

                Lädt...
                X