Problem mit header (); [Login Script]

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

  • Problem mit header (); [Login Script]

    Hallo Leute,

    ich habe einen Problem an meinen Loginskript.
    Und zwar bekomme ich immer diese Fehlermeldung:

    Warning: Cannot modify header information - headers already sent by (output started at /home/www/doc/8196/webmaster@hostinet.de/mail-exchanger.de/www/test/test/usermanagment.inc.php:54) in /home/www/doc/8196/webmaster@hostinet.de/mail-exchanger.de/www/test/test/usermanagment.inc.php on line 18
    Hier nun der Code von der Datei: usermanagment.inc.php

    PHP-Code:
    <?php

    /***
      * Prüfen, ob der User berechtigt ist, einen Login durchzuführen.
      */

      
    function CheckUserLogin ($username$passwort$session) {
        
    $result mysql_query("SELECT username, passwort, vorname, name from mt_user WHERE username='$username' AND passwort='$passwort'") or mysql_error();
        
    $zeile mysql_fetch_array($result);

        if ( 
    $zeile["username"] == "" )
        {
          
    header ("Location:$script_url/test/test/index.php");
        }
        else
        {
          
    $result mysql_query("UPDATE mt_user SET UserSession = '".$session."',letzterlogin = NOW() WHERE username = '".$zeile["username"]."'") or mysql_error();
          
    header ("Location:$script_url/test/test/admin.php");
        }
      }


    /***
      * LOGOUT
      */

      
    function UserLogout ($session) {
        
    $result mysql_query("UPDATE mt_user SET UserSession = NULL WHERE UserSession = '".$session."'") or mysql_error();
        
    header ("Location:$script_url/test/test/index.php");
      }


    /***
      * Prüfen, ob die Session in Ordnung ist.
      */

      
    function CheckUserSession ($session) {
        
    $result mysql_query("SELECT username,name,vorname,letzterlogin FROM mt_user WHERE UserSession = '".$session."'") or mysql_error();
        if ( 
    mysql_num_rows($result) == ) {
          
    $zeile mysql_fetch_array($result);
          
    $sessarr[username]  = $zeile["username"];
          
    $sessarr[name]      = $zeile["name"];
          
    $sessarr[vorname]   = $zeile["vorname"];
          
    $sessarr[UserLogin] = $zeile["UserLogin"];
          return 
    $sessarr;
        }
        else {
          
    header ("Location:$script_url/test/test/index.php");
          return 
    false;
        }
      }
    ?>
    Kann mir jemand hierbei Helfen ?
    Schon mal ein Danke im voraus!

    mfg. Nico
    Webspace , Php

  • #2
    Du mußt den header vor der restlichen Ausgabe senden.

    Nach einer Ausgabe bekommst du o.a. Fehler.
    ---------------------------------------------
    Die Hoffnung stirbt zuletzt.

    Kommentar


    • #3
      @solaris

      ich hatte das gemacht, und es kommt die gleiche Fehler, blos ein zeihle weiter oben.

      Kann mir noch jemand da bei helfen ?

      mfg. Nico
      Webspace , Php

      Kommentar


      • #4
        gibt es in der datei, in der die usermanagment.inc.php eingebunden wird, davor schon ausgaben?

        (btw: das hat wohl nichts mit mysql zu tun, sondern ist ein php-prob ...)
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Hier die Login Datei, wo die usermanagment.inc.php include wird.

          PHP-Code:
          <?php
              session_start
          ();
              include(
          "connect2db.inc.php");
              include(
          "usermanagment.inc.php");
              if (isset(
          $_POST['action']))
              {
                  switch(
          $_POST['action']) {
                      case 
          "login"  $username = (isset($_POST['username'])) ? $_POST['username'] : '';
                                      
          $passwort = (isset($_POST['passwort'])) ? $_POST['passwort'] : '';
                                      
          CheckUserLogin ($username$passwortsession_id());
                                      break;

                      case 
          "logout" UserLogout (session_id());
                                      break;
                  }
              }
          ?>
          <br>
          <form name="login" method="post" action="index.php">
            <input type="hidden" name="action" value="login">
            Enter your username and password to log in
            <br>
            Username:&nbsp;</td><td><input class="flat" type="text" name="username"><br>
            Password:&nbsp;</td><td><input class="flat" type="password" name="passwort"></br>
            <input type="submit" value="Login">
          </form>
          Ich verwende zur Zeit auf meinen Server die PHP Version 4.3.0, könnte es vieleich daran liegen ?
          Webspace , Php

          Kommentar


          • #6
            steht hier vor auch ganz sicher kein leerzeichen oder -zeile?
            PHP-Code:
            <?php
                session_start
            ();
                include(
            "connect2db.inc.php");
                include(
            "usermanagment.inc.php");
            macht die datei connect2db.inc.php vielleicht irgendeine ausgabe, oder enthält ihrerseits whitespace ausserhalb der <?php>-tags?
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Re: Problem mit header (); [Login Script]

              Original geschrieben von Nico_Schubert
              output started at /home/www/doc/8196/webmaster@hostinet.de/mail-exchanger.de/www/test/test/usermanagment.inc.php:54
              und was steht da?
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                @wahsaga,

                Da ist kein Lerzeichen vorhanden und in der connect2db.inc.php steht die Daten für die Db.

                Hier der Code von der connect2db.inc.php :

                PHP-Code:
                <?php

                  
                /* ******************** Definitionen für DB-Connect's ***************** */

                  
                $DB[host]    = "xxx";
                  
                $DB[user]    = "xxx";
                  
                $DB[passwd]  = "xxx";
                  
                $DB[dbname]  = "xxx";

                  
                /* ******************************************************************** */

                  
                @mysql_connect$DB[host] , $DB[user] , $DB[passwd] );
                  @
                mysql_select_db$DB[dbname] ) or die("Unable to select database");

                  
                /* ******************************************************************** */
                //Script URL
                $script_url="http://www.mail-exchanger.de";
                ?>
                Webspace , Php

                Kommentar


                • #9
                  Re: Re: Problem mit header (); [Login Script]

                  Original geschrieben von mrhappiness
                  und was steht da?
                  hier steht die fehlermeldung bei einen Login, es sind user vorhanden in der DB und es macht auch das Update in der Db bei login, aber es macht Irgend wie problem mit den header ().

                  Kann mir jemand helfen ?

                  mfg. Outman
                  Webspace , Php

                  Kommentar


                  • #10
                    Re: Re: Re: Problem mit header (); [Login Script]

                    Original geschrieben von Nico_Schubert
                    Kann mir jemand helfen ?
                    wie schon gesagt, es muss irgendwo schon eine ausgabe erfolgt sein, bevor du header() verwendest - und dann gibt's besagte fehlermeldung.
                    musst halt mal genau suchen, wo das sein könnte ...
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      Habe den Fehler gefunden, es lag an einer lehrstelle am ende der datei: usermanagment.inc.php

                      @alle

                      Danke für Euhre hilfe!

                      mfg. Nico
                      Webspace , Php

                      Kommentar

                      Lädt...
                      X