[MySQL 3.23.X] Problem mit einem Tutorial von PHP-Resource

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

  • [MySQL 3.23.X] Problem mit einem Tutorial von PHP-Resource

    Hallo!

    Ich habe das Tutorial Login/Memberbereich mit Sessions (http://www.php-resource.de/tutorials/read/3/1/) mal ausprobiert.

    Sieht auch soweit alles sehr schön aus. Nachdem ich nun den Connect zur DB anscheinend herstellen konnte (es ist ein Fehler im Tutorial, das heißt dbuser, nicht bduser..), gibt es nun eine schöne Fehlermeldung..


    Warning: Cannot add header information - headers already sent by (output started at /home/www/web3/html/intern/login/var.inc.php:6) in /home/www/web3/html/intern/login/verify.php on line 30

    Die besagte Zeile 30 ist lediglich diese hier:
    PHP-Code:
    header ("Location:admin.php"); 

    ?????
    Zuletzt geändert von bienchen_2; 06.11.2005, 15:06.

  • #2
    Kommen denn irgendwelche Fehlermeldungen? Ach nein, die unterdrückst du ja mit dem @-Zeichen... Nimm das mal weg, und poste, was für eine Fehlermeldung kommt.

    EDIT:
    Bezog sich auf das vorige Problem, das jetzt nicht mehr existiert...
    Zuletzt geändert von Heini81; 06.11.2005, 14:08.

    Kommentar


    • #3
      Was steht denn VOR dieser Zeile? Vor der Zeile darf absolut NICHTS ausgegeben werden, weder HTML noch irgendwelche Ausgaben durch PHP.

      Kommentar


      • #4
        Siehe Edit. Die Fehlermeldung ist einfach Warning: Cannot add header information - headers already sent by (output started at /home/www/web3/html/intern/login/var.inc.php:7) in /home/www/web3/html/intern/login/verify.php on line 30


        Wie ich herausgefunden habe, darf vor dem header-Befehl keine weitere Anfrage an den Server gesendet sein. Nun, ich habe die Zeilen nur so aus dem Tutorial rauskopiert, wie sie auch angegeben wurden!

        Hier mal noch meine Datei verify.php

        PHP-Code:
        <?
        session_start();
        include('var.inc.php');
        if ((!isset($username)) OR (!isset($passwort))) 

        die ("Sorry, aber ohne Name bzw. Passwort geht hier nichts !"); 
        }
        $conn = @ mysql_connect($dbserver,$dbuser,$dbpass); 
        if (!$conn) 

        die ("Sorry, Verbindungsversuch zur Datenbank ist fehlgeschlagen !"); 
        }
        mysql_select_db($dbname,$conn);
        $query = "SELECT pass, level FROM zugriff WHERE name = '".$username."'"; 
        $result =  mysql_query($query,$conn);
        $result =  mysql_query("SELECT pass, level FROM zugriff WHERE name = '$username'",$conn);
        $zeileholen =  mysql_fetch_array($result,MYSQL_ASSOC); 
             mysql_close($conn);
        if (!$zeileholen) 

        die ("Sorry, aber dieser Name ist leider nicht bekannt !"); 
        }
        if ($zeileholen["pass"] <> $passwort) 

        die ("Sorry, aber dieses Passwort passt nicht zum Usernamen !"); 
        }
        $level = $zeileholen["level"];
        session_register('username'); 
        session_register('level');
        header ("Location:admin.php"); 
        ?>
        Oder gehört nur die Zeile header("xxx"); in eine extra Datei? Wenn ja, in welche denn??

        Ach ja, wegen dem Edit: Das hat sich zu schnell erledigt vorhin mit dem Connect

        Kommentar


        • #5
          Wie ich herausgefunden habe
          soso....

          Hast du es schon mal ausprobiert, den Header vor der ersten Ausgabe zu senden? Der Output startet ja, wie dei Fehlermeldung sagt, in der var.inc.php.

          Kommentar


          • #6
            Ja ne ehrlich, stand auf irgendwelchen PHP-Seiten.. Ich sag nur google .

            Jo, danke erstmal. Habe den header einfach mal in die Var.inc.php kopiert:

            PHP-Code:
            <?
            header ("Location:admin.php"); 
            $dbserver = 'localhost'; // Datenbankserveradresse 
            $dbname = 'datenbank'; // Name der Datenbank 
            $dbuser = 'user'; // Username des Datenbankbenutzers 
            $dbpass = 'passwort'; // Passwort des Datenbankbenutzers 
            ?>
            Funktioniert auch!

            Kommentar


            • #7
              Großes Problem aber..

              Oh je, großes Problem...


              Wenn ich nun eine Datei aus dem internen Bereich direkt per URL aufrufe, dann erscheint diese auch ohne Probleme. Das ist bei htaccess auch nicht so, da das ganze Verzeichnis geschützt ist...

              Oh man, habe ich da was übersehen? Oder vermeide ich dies durch SSL? Oder wie oder was?!

              Kommentar


              • #8
                o, danke erstmal. Habe den header einfach mal in die Var.inc.php kopiert:
                *lol* Ja, und was das für einen Sinn ergibt...

                Wenn ich nun eine Datei aus dem internen Bereich direkt per URL aufrufe, dann erscheint diese auch ohne Probleme. Das ist bei htaccess auch nicht so, da das ganze Verzeichnis geschützt ist...
                Ja und? Was ist daran unerwartet. Wie der Name schon sagt, erstellt dieses Script einen Member-/ internen Bereich. KEINEN Verzeichnisschutz!

                Oh man, habe ich da was übersehen?
                Nö!
                der vermeide ich dies durch SSL?
                Nö!
                Oder wie oder was?!
                Nö!

                Kommentar


                • #9
                  Ja und, ich hab' ja nicht gleich solche Kenntnisse in PHP wie manch einer hier.. Aber deshalb ist das Forum auch da, damit man sich gegenseitig helfen kann.

                  @TobiaZ: Wenn du schon so schlaue Antworten gibst, hast du dann auch eine schlaue Lösung für mein Problem??

                  Ich meine, was hat es für einen Sinn, einen Memberbereich ohne Verzeichnisschutz zu erstellen? Naja gut, ist ja nun auch egal. Ich brauche jedenfalls eine Lösung für mein Problem...

                  Gruß
                  bienchen
                  Zuletzt geändert von bienchen_2; 06.11.2005, 18:38.

                  Kommentar


                  • #10
                    Ja und, ich hab' ja nicht gleich solche Kenntnisse in PHP wie manch einer hier.. Aber deshalb ist das Forum auch da, damit man sich gegenseitig helfen kann.
                    Mit dieser Aussage liegst du vollkommen richtig. Aber WORAUF beziehst du dich damit???


                    @TobiaZ: Wenn du schon so schlaue Antworten gibst, hast du dann auch eine schlaue Lösung für mein Problem??
                    Ich bin nicht dafür da, deine Probleme zu LÖSEN, ich will dir dabei HELFEN!

                    Ich meine, was hat es für einen Sinn, einen Memberbereich ohne Verzeichnisschutz zu erstellen? Naja gut, ist ja nun auch egal. Ich brauche jedenfalls eine Lösung für mein Problem...
                    Könnte ich dir erklären, aber du bist offensichtlich nicht wirklich an der Logik interessiert...

                    Desweiteren bist du absolut nicht in der Position den bzw. smilie derart einzusetzen. Also unterlasse es zukünftig!

                    Kommentar


                    • #11
                      Na und ob ich an der Logik interessiert bin! Ich möchte ja diese Sache auch vernünftig zu Ende bringen und nicht mittendrin damit aufhören.. Deshalb interessiert es mich ja, wie und ob ich noch einen zusätzlichen Verzeichnisschutz einbringen kann!

                      Wie ich die Smileys einsetze, dass lasse mal meine Sache sein. Den "teach"-Smiley habe ich auch auf dich bezogen, nicht auf mich!

                      Kommentar


                      • #12
                        Dann mach dich mal auf die Suche nach einem [b]Verzeichnisschutz[b]. Dieses Script ist da nicht so ganz das richtige für dich.

                        Außer du willst, wie es dieses Script auch vorsieht, jede Datei einzeln schützen.

                        Hinzu kommt, dass dieser Code gnadenlos(!) veraltet ist...
                        Zuletzt geändert von TobiaZ; 06.11.2005, 18:49.

                        Kommentar


                        • #13
                          Einen Verzeichnisschutz an sich habe ich ja bereits. Er ist zwar einfach, aber eben .htaccess. Nur gefällt mir die einfache Art davon nicht. Keine persönliche Begrüßung des Users auf der Seite, kein Logout wie im Tutorial möglich und vor allem ist auch keine eigene Login-Seite möglich. Es gibt nur das einfache Explorer-Fenster, wo man sich einloggen kann. Und das hätte ich eben gerne geändert!

                          Usermanagement?
                          Naja um einen Passwort gesicherten Bereich, zB. Ein Adminmodul für das eigene Gästebuch oder das Controlpanel eines Forum oder einfach nur ein geschützer Bereich in einem Forum.
                          Deshalb dachte ich, man könne das Tutorial nutzen, um seinen Bereich zu stricken. Den habe ich ja jetzt, nur brauche ich halt noch zusätzlich einen Verzeichnisschutz.. Und das ist anscheinend nicht möglich?
                          Oder einen Verzeichnisschutz, wo man die im ersten Absatz genannten Dinge auch mit einbauen kann??

                          bienchen
                          Zuletzt geändert von bienchen_2; 06.11.2005, 18:53.

                          Kommentar


                          • #14
                            Und das ist anscheinend nicht möglich?
                            Nicht in diesem Tutorial.
                            Außer du willst, wie es dieses Script auch vorsieht, jede Datei einzeln schützen.
                            Aber ich wiederhole mich...

                            Kommentar


                            • #15
                              Ja ok, dann ist es nicht das richtige für mich. Ich will nicht jede Datei einzeln schützen, sondern einen normalen internen Bereich schützen, indem sich User anmelden können, um gewisse Dateien einzusehen.. Eine Art "Mitarbeiterbereich".. Du verstehst, was ich meine...

                              Wie gesagt, dann geht es mir jetzt eben darum, dass ich einen Verzeichnisschutz habe, bei dem ich Loginseite, evtl. Begrüßung und dergleichen einbauen kann.. In einem anderen Forum sagte man mir, das dies nicht gehen würde und ich mein Anliegen mit Sessions und PHP lösen kann..

                              Edit: In einem weiteren anderen Forum wurde einem User mit dem gleichen Anliegen geraten: "Kombiniere ein Usermanagment mit htaccess...."

                              Und, wie mache ich das? Das eine und das andere habe ich ja praktisch da, nur wie kombiniert man das?
                              Zuletzt geändert von bienchen_2; 06.11.2005, 19:04.

                              Kommentar

                              Lädt...
                              X