Mehrere User gleichzeitig?

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

  • Mehrere User gleichzeitig?

    Nabend ich habe ein Problem,
    ich bin dabei einen Admincenter mit PHP zu basteln!
    Den LogIn habe ich jetzt fast fertig nur jetzt gibt es da noch nen kleines Problemchen!
    Ich habe die User die sich Anmelden können in eine eigene datei gepackt und sie "user.php" ganannt.
    Diese habe ich dann mit
    PHP-Code:
    <? include("user.php") ?>
    in die datei "passwort.php" eingebunden.
    Das ganze sieht bis jetzt si aus und es funzt auch wunderbar!

    passwort.php
    PHP-Code:
    <? include("user.php") ?>
    <?php 
       session_start
    ();
       
       
       if(isset(
    $_POST["n"]))
       {
              
              if(
    $_POST["n"] == "$user_ok&& $_POST["p"] == "$pass_ok
              
    )
                { 
                          
    $_SESSION["n"] = $_POST["n"];
                          
    $_SESSION["p"] = $_POST["p"];
                }
       }
       
               include 
    "benutzererkennung.php";
    ?>
    <html>
    <body>
    <h3>Intro-Seite</h3>
    <?php
      
    echo "Hallo " $_SESSION["n"];
    ?>
    <br>
    <br>
    <a href='admin.php'>Weiter zum Admincenter</a>

    </body>
    </html>
    user.php
    PHP-Code:
    <?php
        $user_ok
    "Test";
        
    $pass_ok"123";
    ?>
    Jetzt will ich aber mehrere User gleichzeitig in der "user.php" drinne haben! Erst dachte ich das geht ganz einfach so.
    PHP-Code:
    <?php
        $user_ok
    "Test";
        
    $pass_ok"123";
    ?> 
    <?php
        $user_ok
    "Test2";
        
    $pass_ok"456";
    ?> 
    <?php
        $user_ok
    "Test3";
        
    $pass_ok"789";
    ?>
    u.s.w.
    aber nix da er nimmt immer nur den User der ganz unten steht deswegen jetzt meine frage wie muss die "user.php" aussehen damit mehrere User zugriff zum Admincenter haben?
    Vielen dank schonmal vorweg!
    mfG DistanZ
    mfG DistanZ

  • #2
    Sobald du mehrere User hast solltest du dich mit Datenbank beschäftigen. Und ein paar Grundlagen wären auch nicht schlecht. Schau dir mal http://www.peterkropff.de/site/php/php.htm an.
    Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

    Kommentar


    • #3
      Re: Mehrere User gleichzeitig?

      Beschäftige dich lieber erstmal mit Arrays, sonst wirst du mit DB-Results nicht umgehen können. Und wenn du das Nötigste verstanden hast, kannst du es ja erstmal damit versuchen:
      PHP-Code:
      <?php
      $user 
      = array(
          
      'Test' => '123',
          
      'Test2' => '456',
          
      'Test3' => '789',
      );
      ?>
      PHP-Code:
      <?php 
      include 'user.php';
      session_start();
      if (!isset(
      $_SESSION['n']) && isset($_POST['n']) && isset($_POST['p'])
          && isset(
      $user[$_POST['n']]) && $user[$_POST['n']] == $_POST['p']) {
          
      $_SESSION['n'] = $_POST['n'];
      }

      Kommentar


      • #4
        Nach seinem Beispiel würde es schon gehen.

        user.php:
        PHP-Code:
        $registered_user['test'] = '123';
        $registered_user['test2'] = '456'
        password.php
        PHP-Code:

        if(isset($registered_user[$_POST['n']]) && $registered_user[$_POST['n']] == $_POST['p']) {... 
        ist aber quick and dirty, muss tontechniker da Recht geben. Datenbanken sind da besser.
        EDIT:
        Zu langsam - und das um die Zeit
        ich glaube

        Kommentar


        • #5
          Vielen dank an euch alle ihr habt mir alle geholfen!! Danke es funzt einwandfrei.
          mfG DistanZ
          mfG DistanZ

          Kommentar


          • #6
            Jetzt habe ich doch noch eine frage!
            und zwar wie funktioniert es das wenn sich beispielsweise ein Besucher auf der HP anmeldet sich diese daten immer zwischen die Klammern bei dem array setzt und nicht immer ganz ans ende der Datei? ich meine das so:

            name und pw werden eingegeben ----senden zur user.php ----> user.php

            sieht jetzt so aus:

            PHP-Code:
            <?php
                $user 
            = array('123' => '123''345' => '345');
            ?>
            jetzt sollen die daten die der benutzer eingibt immer zwischen die beiden Klammern und nicht ans ende der Datei.

            PHP-Code:
            <?php
                $user 
            = array(<--hier zwischen-->);
            ?>
            und nicht:

            PHP-Code:
            <?php
                $user 
            = array('user1' => '123');
            ?><---hier hin--->
            ich hoffe ihr versteht was ich möchte DANKE! das mit der datenbank ist für mich unwichtig, weil der ganze kram für meinen Bruder ist und denn die sicherheit nicht SOOO wichtig ist!
            mfG Distanz
            mfG DistanZ

            Kommentar


            • #7
              serialize()/unserialize()

              Kommentar


              • #8
                eine datenbank hat nicht viel mit sicherheit zu tuen. in einer datenbank
                besteht einfach die möglichkeit daten zu verwalten. in diesem falle auch user anlegen, löschen, editieren. das ist ab dem punkt empfehlenswert, wo mehr als 1 user einen bereich benutzen sollen.

                ich würde dir nocheinmal seiten wie www.peterkropff.de und schattenbaum.net ans herz legen. dir fehlen noch ein paar grundlagen wenn ich mir

                <?php
                $user_ok= "Test";
                $pass_ok= "123";
                ?>
                <?php
                $user_ok= "Test2";
                $pass_ok= "456";
                ?>
                <?php
                $user_ok= "Test3";
                $pass_ok= "789";
                ?>
                sowas anschaue. es ist nicht von nöten für jeden user einen neuen php tag zu öffnen, und in diesem beispiel würdest du deine variable immer wieder überschreiben.
                Webdesign und Webentwicklung - Plunix.de

                Kommentar


                • #9
                  Ja du hast recht ich bin noch ein ziehmiger Anfänger und leider werde ich aus dem beitrag serialize() nicht schlau ich werde mir dann jetzt mal die beiden anderen seiten genauer angucken aber mein Problem versteht ihr oder??
                  mfG DistanZ
                  mfG DistanZ

                  Kommentar


                  • #10
                    leider nicht direkt. um dir es ein wenig näher zu bringen.

                    1. user

                    woraus sollen die user ausgelesen werden.
                    es gibt 2 möglichkeiten: 1. array
                    2. datenbank

                    2. login 1. formular
                    2. vergleich mit punkt 1.
                    3. kennzeichnung des users als eingeloggt
                    4. Punkt 2.3 mit session verknüüfen
                    3. über prüfung 1. schauen ob unter der session des nutzers eine person eingelogt ist. falls nicht ist wieder zu punkt 2.


                    so. bei punkt 1. lies dir durch wie du ein array bildest, und nutze immer wieder die print funktion um zu sehen wie du an die einzelnen datensätze kommst, wenn das klappt zu punkt 2.

                    2. formular erstellen, mit if abfrage feststellen ob user mit den eingegebenen daten besteht. wenn ja das array ergänzen mit den inhalt der session.

                    3. auf jeder seite überprüfen ob unter der session etwas zu finden ist.

                    das ganze kannst du mit einem beispiel tutorial unter: http://www.php-resource.de/tutorials/read/38/1/ nachlesen.
                    ist eine sehr gute variante, die ich in stark modifizierten zustand seitdem ich den login daraus gelernt habe noch bis jetzt benutze.
                    allerdings nurnoch das system wie das ganze abläuft


                    edit: serialize formatiert datensätze so dass sie mit unserialize genauso wieder ausgegeben werden wie sie eingegeben wurde. häufig ändert sich beim speichern eines datensatztes die formatierung zum beispiel das ä wird zu irgendwelchen merkwürdigen zeichen.
                    Zuletzt geändert von Lennie; 22.04.2007, 14:12.
                    Webdesign und Webentwicklung - Plunix.de

                    Kommentar


                    • #11
                      Okay ich habe mir die HPs die du mir gegeben hast mal angesehen und unter Arrays folgendes gefunden: "array_push" dient zum erweitern eines Arrays. Das trifft ja 100% das was ich vor habe nur wo muss ich das jetzt wie einbauen das steht da irgendwie nicht eindeutig. Muss das jetzt in die user.php oder irgendwie in die auswertung.php??
                      mfG DistanZ
                      mfG DistanZ

                      Kommentar


                      • #12
                        Du möchtest, dass ein PHP-Script den Code in der Datei user.php ändert.

                        Das ist zwar prinzipiell möglich, aber es besteht die Gefahr, dass der Code nach der Änderung nicht sauber läuft. Beim nächsten Aufruf würde user.php dann nur einen Fehler erzeugen und nichts geht mehr.

                        Um das auszuschließen, solltest du die Benutzerdaten mit serialize() in eine (Text-)Datei schreiben und mit unserialize() wieder lesen. Dann kümmern sich nämlich diese Funktionen um das richtige Format.

                        Kommentar


                        • #13
                          Und wenn du seralize benutzt solltest du auch noch darauf achten das du den Code entsprechend verpackst. Nicht das jemand dann deine PHP Datei aufruft und ihm der Browser anzeigt {s:5:admin:s:8assword} (nein das ist nicht die genaue Formatierung).

                          Verdammt. Nutze endlich eine Datenbank!
                          Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

                          Kommentar


                          • #14
                            Jaaaa okay ich werde mich jetzt mal über eine Datenbank hermachen mal gucken wie das so klappt! ^^ erstmal danke!
                            mfG DistanZ

                            Kommentar


                            • #15
                              schattenbaum hat unter der kategorie php unten rechts im menu ein gutes anfänger tutorial für datenbanken. sollte fast genau für deine bedürfnisse ausreichen.
                              Webdesign und Webentwicklung - Plunix.de

                              Kommentar

                              Lädt...
                              X