Zugriff nur über Login

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

  • Zugriff nur über Login

    Hallo zusammen!

    ich bin neu hier im Forum und habe auch schon die "Suche" benutzt,
    leider mit nicht ausreichendem Ergebnis.
    Habe mir verschiedene Sachen hier im Board durchgelesen, komme aber nicht wirklich weiter...

    Ich bräuchte eine Lösung für folgende Sache:

    Einen User-Login (nicht über ein Popup) welchen ich mit Usernamen und Password vorgebe.

    Die Seite die ich nach dem erfolgreichen Login anzeigen möchte ist eine reine HTML Website.

    Vorhanden ist ein vServer (Apache, PHP, SQL, Perl, CGI usw.)

    Wie kann ich das am einfachsten lösen?
    Wünschenwert wäre ein fertiger Code den ich einfach nur in eine Site (z.B. login.phtml) kopiere...
    Evtl. mit kurzer Anleitung wo ich den User und das Password hinterlegen muss, da ich von PHP-Programming so gut wie keine Ahnung habe

    Ähnlich wie dieser Codeschnipsel...

    <?php
    function check_pw($u, $p) {
    if ($u=="user" && $p=="passwd")
    {
    return true;
    } else {
    return false;
    }
    }

    if (!isset($_SERVER['PHP_AUTH_USER'])
    or !check_pw($_SERVER['PHP_AUTH_USER'],$_SERVER['PHP_AUTH_PW']))
    {
    Header("WWW-Authenticate: Basic realm=\"My Realm\"");
    Header("HTTP/1.0 401 Unauthorized");
    echo "Text to send if user hits Cancel button\n";
    exit;
    } else {
    echo "Hello $PHP_AUTH_USER.<P>";
    echo "You entered $PHP_AUTH_PW as your password.<P>";
    }
    ?>

    Gruß
    P500

  • #2
    Re: Zugriff nur über Login

    Original geschrieben von P500
    Einen User-Login (nicht über ein Popup)
    HTTP-Auth ist vermutlich das, was du mit "Popup" meinst.
    Die Seite die ich nach dem erfolgreichen Login anzeigen möchte ist eine reine HTML Website. [...]
    Wünschenwert wäre ein fertiger Code den ich einfach nur in eine Site (z.B. login.phtml) kopiere...
    Rein mit HTTP und HTML geht aber nur "mit Popup".
    Vorhanden ist ein vServer (Apache, PHP, SQL, Perl, CGI usw.)
    Dann stelle von "reinem HTML" auf eine der serverseitigen Techniken um, die Formulardaten empfangen und prüfen können.


    Z.B. mit Hilfe des Tutorials http://www.php-resource.de/tutorials/read/38/1/
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      du kannst natürlich nach erfolgreichem Login auf die entsprechende seite weiterleiten. das hindert mich aber nicht daran, später ohne login die seite direkt aufzurufen.

      ansonsten machst du sowas wie eine show.php


      PHP-Code:
      if(!eingeloggt)
        die(
      bitte einloggen);

      include 
      htmlseite.html

      Kommentar


      • #4
        @ wahsaga , TobiaZ

        Vielen Dank für die schnelle Antwort...
        Ich werde mich nacher mal der Sache annehmen.
        Serverseitig hört sich gut an!

        Ich hasse Handbücher zu lesen....aber man kommt nicht drumherum.

        Wenn alles geklappt hat, poste ich kurz...

        Kommentar


        • #5
          @ wahsaga

          ich habe das alles mal nach der Anleitung gemacht,
          bekomme aber noch eine Fehlermeldung mit der ich nicht umgehen kann...

          Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /opt/lampp/htdocs/p500/login.php:2) in /opt/lampp/htdocs/p500/login.php on line 3

          Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /opt/lampp/htdocs/p500/login.php:2) in /opt/lampp/htdocs/p500/login.php on line 3

          muss ich bei MYSQL noch etwas beachten
          Benutze "Webmin"

          ansonsten geht scheinbar alles...

          Kommentar


          • #6
            http://www.php-resource.de/forum/sho...threadid=62965 gilt natürlich auch hier.
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Danke!

              Habs gefunden und behoben... wie bescheuert!

              Bitte noch eine letzte Antwort...

              Wie leite ich nach erfolgreichem Login die User auf eine von mir bestimmte Website, die natürlich nur über diesen Login zu erreichen ist?

              Vermutlich mit einem (include) auf einen htaccess Folder oder so?

              Bin für jede Hilfe dankbar und möchte natürlich nicht nerven!

              Viele Grüsse
              P500

              Kommentar


              • #8
                Was hast du den jetzt für ein loginsystem?

                weiterleitung mittels header(Locaion: ...);

                Kommentar


                • #9
                  Hallo TobiaZ,

                  ich bin echt am verzweifeln, da ich leider nicht genug Zeit habe, mir PHP richtig zu verinnerlichen...

                  Eigentlich ist alles was ich brauche:

                  Ein User-Login (praktisch wäre ein fertiges Script ähnlich wie Auto-Login - Schielkes.net)
                  über den man ca. 10-12 Html-Seiten erreicht, die aber nur über den Login erreichbar sind und nicht direkt über eine Link.

                  Ich möchte dafür nicht ein CMS ala Typo3 oder Mambo verwenden...
                  Das wäre Perlen vor die Säue...

                  htaccess kann ich nicht benutzen, da das Systen wofür ich das benötige kein HTTP-Auth unterstützt bzw. keine "Popups".

                  Gruß
                  P500

                  Kommentar


                  • #10
                    @ wahsaga, tobiaZ

                    ich habe das Login-Script von Andreas Zimare getestet und die
                    Html-Seiten entsprechend angepasst, siehe da es klappt.

                    Wobei ich jetzt nur noch eine Sache habe...

                    Wie kann es regeln, dass die Inhalte der Ordner nicht direkt aufrufbar sind?
                    z.B. habe ich in den Ordnern copyrightgeschütze Flash-Filme die nicht direkt aufrufbar sein sollen (www.mydomain.com/media/film.swf).

                    Danke nochmals für Eure Unterstützung!

                    PS: Wenn man bedenkt, dass ich bis vorgestern keine Ahnung von PHP und SQL hatte, habe ich durch dieses Forum eine Menge gelernt...

                    Kommentar


                    • #11
                      Beim Apache müsste es reichen wenn du in dem zu schützenden Verzeichnis eine .htaccess File erstellst mit folgendem Inhalt:

                      Code:
                      Order deny,allow
                      deny from all
                      ich teste es sofort mal...

                      Gruß,
                      Flo.

                      EDIT: Klappt. Man kann nicht mehr von außen auf den Inhalt des Ordners zugreifen, nur noch lokal. = PHP Script Man muss nichtmal mit CHMOD oder so hantieren, wie ich erst vermutete.
                      Zuletzt geändert von Fl0; 18.01.2006, 16:09.

                      Kommentar


                      • #12
                        Original geschrieben von Fl0
                        allow from 127.0.0.1
                        Nö, das wirf aber mal schnell wieder raus ...
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Kommentar


                        • #13
                          warum?

                          EDIT: Gut, es klappt auch ohne allow from 127.0.0.1, aber warum soll das unbedingt raus?
                          Zuletzt geändert von Fl0; 18.01.2006, 16:07.

                          Kommentar


                          • #14
                            Weil es
                            a) unnötig ist (um Zugriffe von anderen Clients zu unterbinden)
                            b) ggf. sogar den beabsichtigten Schutz unterläuft (ein fremdes Script, welches auf dem selben Server läuft, könnte damit per HTTP-Wrapper die Dateien höchstvermutlich immer noch auslesen/einbinden, und das sogar an gängigen Sicherheitsmaßnahmen wie Safe Mode und open_basedir vorbei ...)
                            I don't believe in rebirth. Actually, I never did in my whole lives.

                            Kommentar


                            • #15
                              Stimmt. Hast recht. Danke für den Hinweis, ich editiers mal raus.

                              Kommentar

                              Lädt...
                              X