Wo ist der Fehler im Login Script?!

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

  • Wo ist der Fehler im Login Script?!

    Hallo,

    ich habe folgendes Login Script mir gebastelt, das mit Sessions arbeiten soll.

    Wenn ich mich einlogge, dann bekomme ich aber immer folgende Feher:

    Warning: Cannot add header information - headers already sent by (output started at /is/htdocs/29704/www.xxxxxxx/xxxxxx/login.php4:2) in /is/htdocs/29704/www.xxxxxxx/xxxxxx/login.php on line 13

    Warning: Cannot add header information - headers already sent by (output started at /is/htdocs/29704/www.xxxxxxx/xxxxxx/login.php4:2) in /is/htdocs/29704/www.xxxxxxx/xxxxxx/login.php on line 14

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /is/htdocs/29704/www.xxxxxxx/xxxxxx/login.php on line 21

    Das Script ist das folgende:
    PHP-Code:
    <?
    require("settings.php");

    if ($REQUEST_METHOD == "POST")
    {
        $md5passwort = md5($passwort.$secret);
        
        if ($truecookie == "True") {
            setcookie("loginuser", $user, time()+(30 * 24 * 3600),"/",".xxxxxx");
            setcookie("loginpass", $passwort, time()+(30 * 24 * 3600),"/",".xxxxxx");
        } else {
            setcookie("loginuser", "", time()-(30 * 24 * 3600));
            setcookie("loginpass", "", time()-(30 * 24 * 3600));
        }
        $serverid = mysql_connect ($dbhost, $dbuser, $dbpass);
        mysql_select_db ($dbname);

        $sqlbefehl =  "SELECT * FROM _members where name='".$user."' and passwort='".$md5passwort."' and aktiv='checked'";
        $ergebnis  = mysql_query($sqlbefehl, $serverid);
        while ($spalte = mysql_fetch_array ($ergebnis)) {
            session_start();
            session_register("loggedin");
            session_register("user");
            session_register("isadmin");
            $loggedin = "youmakeit";
            if ($spalte[15] == "checked") {
                $isadmin = "true";
            }
            echo "<script language='Javascript'>location.href='index.php'</script>";
        }
        mysql_close ($serverid);
    }
    require("../head.php");
    ?>
    <form method="post" action="<?=$SCRIPT_NAME?>" name="loginform">
    <table align="center" height="98%" border="0" cellspacing="0" cellpadding="0"><tr><td>
        <table align="center" border="0" cellspacing="5" cellpadding="5" bgcolor="<?= $tblcolor1 ?>">
            <tr> 
                <td><font size="2"><b>Username : </b></font></td>
                <td><input type="text" name="user" value="<?= $loginuser ?>"></td>
            </tr>
            <tr> 
                <td><font size="2"><b>Password : </b></font></td>
                <td><input type="password" name="passwort" value="<?= $loginpass ?>"></td>
            </tr>
            <tr> 
                <td colspan="2" align="center"><input type="checkbox" name="truecookie" value="True" <? if (isset($HTTP_COOKIE_VARS['loginuser'])) { ?>checked<? } ?>><font size="2"><b>Setze Cookie für 30 Tage</b></font></td>
            </tr>
            <tr> 
                <td colspan="2" align="center"><input type="submit" value="Login" name="submit"></td>
            </tr>
        </table>
    </td></tr></table>
    </form>
    <script language="Javascript">
        document.loginform.user.focus();
    </script>
    Ich weiss nicht mehr wo ich suchen soll.

    Bitte um mithilfe

    Danke vorab

    mfg leinad
    Zuletzt geändert von leinad; 10.10.2002, 14:08.

  • #2
    was hat das im Forum News zu suchen *verschiebt*

    Kommentar


    • #3
      da wird bei dir schon irgendwas for dem aufruf "setcookie..." an den browser geschickt, wie die fehlermeldung besagt.
      es darf aber nichts davor gesendet werden. schau mal in der settings.php nach, ob da schon irgendein echo oder dergleichen aufgerufen wird.

      Kommentar


      • #4
        Das ist meine settings.php

        PHP-Code:
        <font color="#99CCFF">
        <?
        $dbhost = "mysql3.webpack.hosteurope.de";
        $dbname = "xxxxx";
        $dbuser = "xxxxx";
        $dbpass = "xxxxx";

        $secret = "xxxxx";                                                         //md5 passwortverschlüsselung (nicht ändern)
                                    //mailempfänger für fordern formular
                                    //mailempfänger für admin formular
        $validgames = "Auswahl; Delta Force Land Warrior; Delta Force Task Force Dagger; Counter-Strike 1.5";    //Spiele die Gespielt werden

        $tblcolor1 = "#021E38";
        $tblcolor2 = "#336699";
        $tblborder = "#336699";
        $tblborder2 = "#021E38";
        $tblwidth = "96%";

        ?>
        Also hier wird nichts gesendet, soweit ch das festgestellt habe.

        Es kann ja wohl nicht sein, das es mit dem Forum konflickte gibt, oder?!

        Kommentar


        • #5
          <font color="#99CCFF">
          wird gesendet
          Beantworte nie Threads mit mehr als 15 followups...
          Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

          Kommentar


          • #6
            also <font color="#99CCFF"> lag es nicht

            Das ist meine head.php
            Code:
            <html>
            <head>
            <title></title>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
            </head>
            <STYLE type="text/css">
            BODY {
            scrollbar-face-color:#021E38;
            scrollbar-highlight-color:#021E38;
            scrollbar-3dlight-color:#336699;
            scrollbar-darkshadow-color:#336699;
            scrollbar-shadow-color:#021E38;
            scrollbar-arrow-color:#336699;
            scrollbar-track-color:#336699;
            }
            
            A:visited
            		{
            		color: #FFFFFF;
            		font-size : 9pt;
            		text-decoration:none
            		}
            
            A:active
            		{
            		color: #FF9900;
            		font-size : 9pt;
            		text-decoration:none
            		}
            
            A:hover
            		{
            		color: #FF9900;
            		font-size : 9pt;
            		text-decoration:none
            		}
            body
            		{
               		font-size : 9pt;
               		color : #FFFFFF;line-height :9pt;
            		}
            a
            		{
               		font-size : 9pt;
               		text-decoration : none;
            		color: #FFFFFF;
            		}
            </STYLE>
            <body background="images/backround.jpg bgproperties="fixed" bgcolor="#000000" marginwidth="0" marginheight="0" topmargin="0" leftmargin="0">
            Zuletzt geändert von leinad; 10.10.2002, 14:31.

            Kommentar


            • #7
              session_start()

              ich hatte dieselbe Fehlermeldung auch mal. So wie es aussieht, liegt das wohl an der Stellung des Befehles session_start() im Script. Der Befehl liegt in einer Schleife

              while .....

              {
              session_start();
              session_register .....;
              }

              und wird im ungünstigsten Fall, bei mehreren Einträgen mehrmals aufgerufen. Und das geht wohl nicht.
              Ich hab bei mir folgendes gemacht, den Befehl session_start() an den Anfang, vor allen Headerinformationen eingebaut.

              und da die session ja sowieso noch registriert wird, kann man dann ja in den anderen Scripten abfragen

              if (session_is_registered(......))
              {
              und so weiter
              }


              Gruß Ralf

              Kommentar


              • #8
                Denke Ralf ist nah dran.

                Was zeigt denn dein Quelltext (über der Fehlermeldung)?

                Kommentar

                Lädt...
                X