Ankündigung

Einklappen
Keine Ankündigung bisher.

Login in Fenster

Einklappen

Neue Werbung 2019

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

  • Login in Fenster

    wie bekomme ich so ein login hin?


    Und dann soll er noch die eingegebenen daten mit eine MYSQL-Datenbank abgleichen?

    Das geht bei mir nicht!!!!

  • #2
    Vielleicht hilft das ja weiter ...

    http://de3.php.net/manual/de/features.http-auth.php
    www.webdeveloperfactory.de - Der Blog und Ratgeber für Webentwickler mit zahlreichen Informationen

    Kommentar


    • #3
      oder das. Vor allem das "Passwortschützen von Verzeichnissen"

      Kommentar


      • #4
        Ich wollte das als Passwortschutz für meinen Admin-Bereich!!!

        Hier:
        http://de3.php.net/manual/de/features.http-auth.php
        hab ich zwar was mit MYSQL gefunden aber das funktioniert nicht!!!! Habt ihr nicht noch ne andere Idee??

        Kommentar


        • #5
          Ähm, "aber das funktioniert nicht" ist eine ganz ganz schlechte Aussage, wenn man will, dass einem jemand hilft

          Der Authentifizierungsdialog hat ja selber nix mit dem MySQL-Teil zu tun, also wo liegt das Problem?
          Authentifizierungsdaten holen geht so, wie du sicher von php.net weißt:

          PHP-Code:
          <?php
            
          if (!isset($_SERVER['PHP_AUTH_USER'])) {                              /*Wenn das Formular noch nicht ausgefüllt wurde,...*/
                 
          Header("WWW-Authenticate: Basic realm=\"My Realm\"");  /*...zeig' den Authentifizierungsdialog an*/
                 
          Header("HTTP/1.0 401 Unauthorized");
                 echo 
          "Text to send if user hits Cancel button\n";
                 exit;
                 } else { 
          /*, wenn er aber schon ausgefüllt wurde (und die Seite halt mit den ausgefüllten Daten automatisch nocheinmal aufgerufen wird)... */ 
             
          echo "Hello {$_SERVER['PHP_AUTH_USER']}"/*dann zeige mir Hello und dann den eingetragenen Nutzernamen...*/
             
          echo "

          You entered 
          {$_SERVER['PHP_AUTH_PW']} as your password.</p>"/*sowie das Passwort */
            
          }
          ?>
          Was folgern wir daraus? $_SERVER['PHP_AUTH_USER'] beinhaltet den eingegebenen Nutzernamen, $_SERVER['PHP_AUTH_PW'] das Passwort

          Warum auch immer du MySQL verwenden willst, um die Daten zu speichern, ist mir auch schleierhaft. Wenn's dein Admin-Bereich ist, reicht doch eine Textdatei oder die Daten in der PHP-Datei selber zu speichern vollkommen.

          Mit MySQL musst du eh vertraut sein, wenn du es für Passwort-Abfragen verwendest, also geh ich davon aus, dass du die passenden Statements hinkriegst, aber denk noch dran, dass du alle Passwörter immer als Hashs speicherst

          Ach, übrigens: Wenn überhaupt, reicht ein Ausrufezeichen

          blubird

          Kommentar


          • #6
            Re: Login in Fenster

            Zitat von simgel
            wie bekomme ich so ein login hin?
            "So"? Was ist denn "so"?

            Schau dir eventuell mal das hier an:
            http://forum.developers-guide.net/thread54.html
            [b][url=http://www.benjamin-klaile.de]privater Blog[/url][/b]

            Kommentar


            • #7
              ich denk ma formular kannste selber aufstellen: kommen wir zu der eigentlichen abgleich datei:
              PHP-Code:
              <?php
              session_start
              ();
              ?>
              <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
              <html>
              <head>
              <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
              <meta name="Generator" content="Symtec Development Studio 1.1">
              <title>Admin Bereich</title>
              <link rel="stylesheet" href="../../class.css" type="text/css">
              </head>
              <body>
              <?php

              include("../config.php");

              $sql "SELECT id, admin, passwort
                      FROM admin"
              ;
              $res mysql_query($sql) or die( mysql_error() );
              $login = array( session_id() );

              while(
              $row mysql_fetch_assoc($res))
                {
                  if(
              $row['admin']!=$_POST['admin'] and $row['passwort']!=$_POST['passwort'])
                    {
                  die(
              "<font color='#ff0000'>Fehler:</font>Sie haben falsche Daten eingegeben!

              [url='index.php']Zurück[/url]\n"
              );
                  }
                    else
                        {
                    
              session_register("login");
                    
              $_POST['login'] = true;
                    echo
              "Klicken Sie auf den Link und Sie werden weiter geleitet!

              \n"
              ;
                    echo
              "[url='intern/index.php?".session_name()."=".session_id()."']Weiter[/url]

              \n"
              ;
                }
              }
              ?>
              </body>
              </html>
              in config.php musste halt deine daten zur sql datenbank geben. hab es in ner externen datei gemacht, weil ich die da häufiger gebraucht hab. das wäre dann zum überprüfen der daten.
              kommen wir zum checken ob man noch eingelogt is:
              PHP-Code:
              <?php   session_start();

                  if( !
              $_SESSION['loggedIn'] ) {
                      
              header'Location: http://index.html' );
                      exit();
                  }

              ?>
              wenn die session $_SESSION['loggedIn'] nicht mehr besteht wirst du automatisch zu deiner startseite geleitet. musst halt dort noch die datei angeben.
              diesen letzten abschnitt tust du einfach noch in deinen admin raum includen un aus die maus haste schon en login.

              mfg. Hesse-Company

              Kommentar


              • #8
                Hm, Hesse-Company, das ist glaub ich aber nicht wirklich das, was er sucht, oder?
                Was oben abgebildet ist (oder war, warum auch immer es dieses Bild nicht mehr gibt), ist das, was der Browser automatisch anzeigt, wenn er den HTTP-Header erhält, der Authorisierung verlangt (sprich 401), da muss man kein Formular mit der Hand machen.

                Kommentar

                Lädt...
                X