• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

header Problem

Status
Für weitere Antworten geschlossen.

Web_spider

Neues Mitglied
Hi all
Ich habe da ein PRoblem, denn meine Seite leitet nicht weiter per
header. Das kann ja eigentlich nur sein, wenn vorher der Header schonmal gesendet wurde, dass ist aber hier nicht der Fall.
Hier der Code:
PHP:
<?php
session_start();
?>
<?php
echo "<?xml version='1.0' encoding='iso-8859-1' ?>";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
       <title>Glory Age - Startseite Beta 1.0 </title>
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<meta http-equiv="content-type" content="application/xhtml+xml; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="css/standart.css" />
</head>
<body>
<!-- Banner [BEGIN] -->
<table cellpadding="0" cellspacing="0">
  <tr>
    <td></td>
  </tr>
</table>
<!-- Banner [END] -->
<!-- ############ -->
<!-- Main [BEGIN] -->
<table align="center" id="maintable">
  <tr>
    <!-- Left menu [BEGIN] -->
    <td id="leftmenu" valign="top" align="center">
      <table id="secondtable" border="0" cellpadding="5" cellspacing="5"> 
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/index.php">News</a></td>
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Registrieren</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menufirst" href="http://tdagaming.td.funpic.de/reg.php">Login</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Demo</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Tools</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Hilfe</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Forum</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/managment.php">Managment</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Impressum</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Support</a></td>  
        </tr>
      </table>
    </td>
    <!-- Left menu [END] -->
    <!-- #####hr##### -->
    <!-- Main-site [BEGIN] -->
    <td valign="top" id="mainsite">
        <?php
        //Ueberpruefen ob Login Vorgang ist
        if ($_POST['access'] == "yes")
        {
            //Daten beziehen
            $username = $_POST['username'];
            $password = $_POST['password'];
            //Eingaben Ueberpruefen
                //Auf Inhalt ueberpruefen
                if ($username == "")
                {
                    $username_fail = "\n<small style='color: red;'>Bitte dieses Feld ausf&uuml;llen!</small><br />\n";
                    $fail = true;
                }
                //Auf Laenge ueberpruefen
                else
                {
                    if (strlen($username) < 5)
                    {
                          $username_fail = "\n<small style='color: red;'>Der Accountname muss mindestens 5 Zeichen lang sein!</small><br />\n";
                          $fail = true;
                    }
                }
                //Auf Inhalt ueberpruefen
                if ($password == "")
                {
                    $password_fail = "\n<small style='color: red;'>Bitte dieses Feld ausf&uuml;llen!</small><br />\n";
                    $fail = true;
                }
            //Eimgaebn ueberpruefen zuende
            if($fail != true)
            {
                //Username Konfiguration
                $username = strtolower($username);                
                $username = str_replace("ä", "ae", $username);
                $username = str_replace("ö", "oe", $username);
                $username = str_replace("ü", "ue", $username);
                $username = str_replace(" ", "_", $username);  
                //Passwort Konfiguration
                $password = strtolower($password);
                
                //Es folgt der Code zur Ueberpruefung des Benutzers und des Passworts:
                //[BEGIN -->
                $db = @mysql_connect("****", "****", "****")
                    or die("<script type=\"text/javascript\">alert('Es konnte keine Verbindung zur Datanbank hergestellt werden.'); window.close();</script>");
                @mysql_select_db("db183424299")
                    or die("<script type=\"text/javascript\">alert('Es gab leider Probleme mit der Datenbank.'); top.location.href=self.location;</script>");    
                $sql = "SELECT
                          *
                        FROM
                          user
                        WHERE
                          username_real
                        LIKE
                          '".$username."'                                               
                       ";   
                $result = @mysql_query($sql)
                    or die("<script type=\"text/javascript\">alert('Es gab leider Probleme mit der Datenbank.'); top.location.href=self.location;</script>"); 
                $num = mysql_num_rows($result);
                //Falls der Benutzer nicht vorhanden ist!
                if ($num == 0)
                {
                    $username_fail = "\n<small style='color: red;'>Dieser Benutzer ist leider nicht vorhanden!</small><br />\n";
                } 
                //Der Benutzer ist Vorhanden 
                else
                {
                    $row = @mysql_fetch_assoc($result)
                    or die("<script type=\"text/javascript\">alert('Es gab leider Probleme mit der Datenbank.'); top.location.href=self.location;</script>"); 
                    mysql_close($db);
                    if($password == $row['password'])
                    {
                        //Variabeln konfigurieren fuer die Sitzung
                        $_SESSION['username'] = $row['username_real'];
                        $_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
                        $_SESSION['useraccess'] = true;
                        header("Location: http://www.gloryage.de/login/index.php");
                        exit();
                    }
                    //Fehler: Inkorekktes Passwort
                    else
                    {
                        $password_fail = "\n<small style='color: red;'>Inkorrektes Passwort!</small><br />\n";   
                    }
                }
            }   
            else
            {
                echo "<small style='color: red'><b>Beim Login sind Fehler aufgetretten!</b></small><br />\n";
            }

        }
        //Falls Das Dokument Normal aufgerufen wird
        ?>
        <form action="<? echo($PHP_SELF) ?>" method="post">
            <b>Accountname:</b><br />
            <?php
                if ($_POST['access'] == "yes")
                {
                    echo $username_fail;
                }
            ?>
            <input type="text" name="username" size="30" /><br />
            <b>Passwort:</b><br />
            <?php
                if ($_POST['access'] == "yes")
                {
                    echo $password_fail;
                }
            ?>
            <input type="password" name="password" size="30" /><br />
            <input type="submit" value="Login" />
            <input type="reset" value="Reset" /><br />
            <input type="hidden" name="access" value="yes" /><br />
        </form>
    </td>
    <!-- Main-site [END] -->
    <!-- #####hr##### -->
    <!-- Right menu [BEGIN] -->
    <td align="center" valign="top" id="rightmenu">
    </td>
    <!-- Right menue [END] -->
  </tr>
</table>
<!-- Main [END] -->
</body>
</html>
Hoffe mir kann jemand helfen

mfg web_spider :D
 
"header is already sent by" (oder so) heisst nicht, dass du header() zuvor schon mal benutzt hast. Es heisst, dass schon Code an den Browser gesendet wurde.

Mit header() verhält es sich genau gleich wie mit session_start() : Es darf davor keine Ausgabe erfolgen.

Daher mein unverbindlicher Tipp: Jeder Text, der später ausgegeben werden soll in einer Variable speichern und am schluss ausgeben.
 
ist aber ne Menge Arbeit -.-
gibt es keine andere Möglichkeit zur weiterleitung in php
EDIT://
Mir fällt ein ich könnte ja auch die Überprüfung der LoginDaten auch mit
einer externen php Datei machen.
Trotzdem:
gibt es keine andere Möglichkeit zur weiterleitung in php
 
ist aber ne Menge Arbeit -.-
gibt es keine andere Möglichkeit zur weiterleitung in php
EDIT://
Mir fällt ein ich könnte ja auch die Überprüfung der LoginDaten auch mit
einer externen php Datei machen.
Trotzdem:
gibt es keine andere Möglichkeit zur weiterleitung in php
In deinem Script wäre das gar nicht so viel Arbeit, du kannst ja die Abfragen machen, bevor du irgendetwas ausgibst.

Meine Variante:
PHP:
<?php
session_start();

$echo = "";

        //Ueberpruefen ob Login Vorgang ist
        if ($_POST['access'] == "yes")
        {
            //Daten beziehen
            $username = $_POST['username'];
            $password = $_POST['password'];
            //Eingaben Ueberpruefen
                //Auf Inhalt ueberpruefen
                if ($username == "")
                {
                    $username_fail = "\n<small style='color: red;'>Bitte dieses Feld ausf&uuml;llen!</small><br />\n";
                    $fail = true;
                }
                //Auf Laenge ueberpruefen
                else
                {
                    if (strlen($username) < 5)
                    {
                          $username_fail = "\n<small style='color: red;'>Der Accountname muss mindestens 5 Zeichen lang sein!</small><br />\n";
                          $fail = true;
                    }
                }
                //Auf Inhalt ueberpruefen
                if ($password == "")
                {
                    $password_fail = "\n<small style='color: red;'>Bitte dieses Feld ausf&uuml;llen!</small><br />\n";
                    $fail = true;
                }
            //Eimgaebn ueberpruefen zuende
            if($fail != true)
            {
                //Username Konfiguration
                $username = strtolower($username);                
                $username = str_replace("ä", "ae", $username);
                $username = str_replace("ö", "oe", $username);
                $username = str_replace("ü", "ue", $username);
                $username = str_replace(" ", "_", $username);  
                //Passwort Konfiguration
                $password = strtolower($password);
                
                //Es folgt der Code zur Ueberpruefung des Benutzers und des Passworts:
                //[BEGIN -->
                $db = @mysql_connect("****", "****", "****")
                    or die("<script type=\"text/javascript\">alert('Es konnte keine Verbindung zur Datanbank hergestellt werden.'); window.close();</script>");
                @mysql_select_db("db183424299")
                    or die("<script type=\"text/javascript\">alert('Es gab leider Probleme mit der Datenbank.'); top.location.href=self.location;</script>");    
                $sql = "SELECT
                          *
                        FROM
                          user
                        WHERE
                          username_real
                        LIKE
                          '".$username."'                                               
                       ";   
                $result = @mysql_query($sql)
                    or die("<script type=\"text/javascript\">alert('Es gab leider Probleme mit der Datenbank.'); top.location.href=self.location;</script>");
                $num = mysql_num_rows($result);
                //Falls der Benutzer nicht vorhanden ist!
                if ($num == 0)
                {
                    $username_fail = "\n<small style='color: red;'>Dieser Benutzer ist leider nicht vorhanden!</small><br />\n";
                }
                //Der Benutzer ist Vorhanden
                else
                {
                    $row = @mysql_fetch_assoc($result)
                    or die("<script type=\"text/javascript\">alert('Es gab leider Probleme mit der Datenbank.'); top.location.href=self.location;</script>");
                    mysql_close($db);
                    if($password == $row['password'])
                    {
                        //Variabeln konfigurieren fuer die Sitzung
                        $_SESSION['username'] = $row['username_real'];
                        $_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
                        $_SESSION['useraccess'] = true;
                        header("Location: http://www.gloryage.de/login/index.php");
                        exit();
                    }
                    //Fehler: Inkorekktes Passwort
                    else
                    {
                        $password_fail = "\n<small style='color: red;'>Inkorrektes Passwort!</small><br />\n";   
                    }
                }
            }   
            else
            {
                //Statt den Code direkt auszugeben, die Variable $echo ergänzen. 
                $echo .= "\n<small style='color: red'><b>Beim Login sind Fehler aufgetretten!</b></small><br />\n";
            }

        }
        //Falls Das Dokument Normal aufgerufen wird
        echo "<?xml version='1.0' encoding='iso-8859-1' ?>";        
        ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
       <title>Glory Age - Startseite Beta 1.0 </title>
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<meta http-equiv="content-type" content="application/xhtml+xml; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="css/standart.css" />
</head>
<body>
<!-- Banner [BEGIN] -->
<table cellpadding="0" cellspacing="0">
  <tr>
    <td></td>
  </tr>
</table>
<!-- Banner [END] -->
<!-- ############ -->
<!-- Main [BEGIN] -->
<table align="center" id="maintable">
  <tr>
    <!-- Left menu [BEGIN] -->
    <td id="leftmenu" valign="top" align="center">
      <table id="secondtable" border="0" cellpadding="5" cellspacing="5">
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/index.php">News</a></td>
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Registrieren</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menufirst" href="http://tdagaming.td.funpic.de/reg.php">Login</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Demo</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Tools</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Hilfe</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Forum</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/managment.php">Managment</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Impressum</a></td>  
        </tr>
        <tr>
          <td class="link" align="center"><a class="menu" href="http://tdagaming.td.funpic.de/reg.php">Support</a></td>  
        </tr>
      </table>
    </td>
    <!-- Left menu [END] -->
    <!-- #####hr##### -->
    <!-- Main-site [BEGIN] -->
    <td valign="top" id="mainsite">
    
    <?php echo $echo;  /*Hier gebe ich dann die Variable aus*/ ?>
    
        <form action="<? echo($PHP_SELF) ?>" method="post">
            <b>Accountname:</b><br />
            <?php
                if ($_POST['access'] == "yes")
                {
                    echo $username_fail;
                }
            ?>
            <input type="text" name="username" size="30" /><br />
            <b>Passwort:</b><br />
            <?php
                if ($_POST['access'] == "yes")
                {
                    echo $password_fail;
                }
            ?>
            <input type="password" name="password" size="30" /><br />
            <input type="submit" value="Login" />
            <input type="reset" value="Reset" /><br />
            <input type="hidden" name="access" value="yes" /><br />
        </form>
    </td>
    <!-- Main-site [END] -->
    <!-- #####hr##### -->
    <!-- Right menu [BEGIN] -->
    <td align="center" valign="top" id="rightmenu">
    </td>
    <!-- Right menue [END] -->
  </tr>
</table>
<!-- Main [END] -->
</body>
</html>
Sollte eigentlich klappen.
 
vielen Dank für die Mühe :)
EDIT:// Ich hab mal Interesse weise es auf ne Externe Datei gelegt, aber der Code leitet wieder nicht weiter:

login_read.php
PHP:
        <?php
        session_start();
        if ($_POST['access'] == "yes")
        {
            //Daten beziehen
            $username = $_POST['username'];
            $password = $_POST['password'];
            //Eingaben Ueberpruefen
                //Auf Inhalt ueberpruefen
                if ($username == "")
                {
                    $_SESSION['usernamefail'] = "\n<small style='color: red;'>Bitte dieses Feld ausf&uuml;llen!</small><br />\n";
                    $_SESSION['usernamevalue'] = $_POST['username']; 
                    header("Location: http://www.gloryage.de/login.php"); 
                    exit(); 
                }
                //Auf Laenge ueberpruefen
                else
                {
                    if (strlen($username) < 5)
                    {
                          $_SESSION['usernamefail'] = "\n<small style='color: red;'>Der Accountname muss mindestens 5 Zeichen lang sein!</small><br />\n";
                          $_SESSION['usernamevalue'] = $_POST['username']; 
                          header("Location: http://www.gloryage.de/login.php"); 
                          exit();
                    }
                }
                //Auf Inhalt ueberpruefen
                if ($password == "")
                {
                    $_SESSION['passwordfail'] = "\n<small style='color: red;'>Bitte dieses Feld ausf&uuml;llen!</small><br />\n";
                    $_SESSION['usernamevalue'] = $_POST['username']; 
                    header("Location: http://www.gloryage.de/login.php"); 
                    exit();
                }
            //Eimgaebn ueberpruefen zuende
                //Username Konfiguration
                $username = strtolower($username);                
                $username = str_replace("ä", "ae", $username);
                $username = str_replace("ö", "oe", $username);
                $username = str_replace("ü", "ue", $username);
                $username = str_replace(" ", "_", $username);  
                //Passwort Konfiguration
                $password = strtolower($password);
                
                //Es folgt der Code zur Ueberpruefung des Benutzers und des Passworts:
                //[BEGIN -->
                $db = @mysql_connect("****", "****", "****")
                    or die("<script type=\"text/javascript\">alert('Es konnte keine Verbindung zur Datanbank hergestellt werden.'); window.close();</script>");
                @mysql_select_db("db183424299")
                    or die("<script type=\"text/javascript\">alert('Es gab leider Probleme mit der Datenbank.'); top.location.href=self.location;</script>");    
                $sql = "SELECT
                          *
                        FROM
                          user
                        WHERE
                          username_real
                        LIKE
                          '".$username."'                                               
                       ";   
                $result = @mysql_query($sql)
                    or die("<script type=\"text/javascript\">alert('Es gab leider Probleme mit der Datenbank.'); top.location.href=self.location;</script>"); 
                $num = mysql_num_rows($result);
                //Falls der Benutzer nicht vorhanden ist!
                if ($num == 0)
                {
                    $_SESSION['usernamefail'] = "\n<small style='color: red;'>Dieser Benutzer ist leider nicht vorhanden!</small><br />\n";
                    $_SESSION['usernamevalue'] = $_POST['username']; 
                    header("Location: http://www.gloryage.de/login.php"); 
                    exit();
                } 
                //Der Benutzer ist Vorhanden 
                else
                {
                    $row = @mysql_fetch_assoc($result)
                    or die("<script type=\"text/javascript\">alert('Es gab leider Probleme mit der Datenbank.'); top.location.href=self.location;</script>"); 
                    mysql_close($db);
                    if($password == $row['password'])
                    {
                        //Variabeln konfigurieren fuer die Sitzung
                        $_SESSION['username'] = $row['username_real'];
                        $_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
                        $_SESSION['useraccess'] = true;
                        //Variablen loeschen, die nicht mehr gebraucht werden
                            //username
                            unset($_SESSION['usernamefail']);
                            unset($_SESSION['usernamevalue']);
                            
                            //password
                            unset($_SESSION['passwordfail']);
                        header("Location: http://www.gloryage.de/login/index.php");
                        exit();
                    }
                    //Fehler: Inkorekktes Passwort
                    else
                    {
                        $_SESSION['passwordfail'] = "\n<small style='color: red;'>Inkorrektes Passwort!</small><br />\n"; 
                        $_SESSION['usernamevalue'] = $_POST['username']; 
                        header("Location: http://www.gloryage.de/login.php"); 
                        exit();
                    }
                }   
        }
        ?>
greez web_spider :D

Kann mir denn keiner HElfen? ich würde mich sehr freuen?
 
Zuletzt bearbeitet:
es kommt keine fehlermeldung, es wird einfach nicht weitergeleitet...
//EDIT: schade
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Zurück
Oben