Hilfe was ist an diesem Code falsch, ich dreh durch...

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
narob
Mitglied
Beiträge: 17
Registriert: 30.05.2004 15:01

Hilfe was ist an diesem Code falsch, ich dreh durch...

Beitrag von narob »

Hi,

jetzt ist mir die Lust vergangen, ich schaff es einfach nicht, ich bekomme ständig Fehlermeldungen, dabei will ich doch nur eine externe Seite durch Loginpflich im Forum schützen:

Code: Alles auswählen

<html>
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<?php 
//Benötigte Dateien und Variablen von phpBB 
define('IN_PHPBB', true); 
$phpbb_root_path = './'; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 


//Session auslesen und Benutzer-Informationen laden 
$userdata = session_pagestart($user_ip, PAGE_INDEX); 
init_userprefs($userdata); 

?>
<body>
<?php 
define('IN_PHPBB',true); 

$phpbb_root_path = "./"; // set path to phpBB files 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 

$userid = $userdata['user_id']; 
$sql = "SELECT * FROM " . USER_GROUP_TABLE . " WHERE user_id = '$userid'"; 
$result = $db->sql_query($sql); 
$isauth = 0; 
while ($row = $db->sql_fetchrow($result)) 
{ 
if ($row['group_id'] == 'insert_group_id_here' || $row['group_id'] == 'insert_group_id_here') 
{ 
$isauth = 1; 
} 
} 

if($userdata['session_logged_in']){ 
?>
<div align="left"> 
  <center>
    <font size="1" face="Verdana">Hallo, <?php echo $userdata[username] ?>! </font>
  </center>
</div>
<br>
<div class="nav"><font face="Verdana"><font size="1">:: </font> <a class="nav" href="http://www.xyz.de/phpBB2/profile.php?mode=editprofile"> 
  <font size="1">Profil bearbeiten</font></a></font></div>
<div class="nav"><font face="Verdana"><font size="1">:: </font> <a class="nav" href="http://www.xyz.de/phpBB2/privmsg.php?folder=inbox"> 
  <font size="1">Private Nachrichten</font></a></font></div>
<div class="nav"><font face="Verdana"><font size="1">:: </font> <a class="nav" href="http://www.xyz.de/phpBB2/login.php?logout=true&redirect=../index.php"> 
  <font size="1">Ausloggen</font></a></font></div>
<font size="1" face="Verdana"> 
<?php 
}else{ 
?>
</font> 
<form action="http://www.xyz.de/phpBB2/login.php" method="post">
  <table border="0" cellpadding="3" cellspacing="1" width="100%">
    <tr> 
      <td> <font size="1" face="Verdana">Username:<br>
        <input class="searchbox" type="text" name="username" size="10" maxlength="40">
        </font> </td>
    </tr>
    <tr> 
      <td> <font size="1" face="Verdana">Passwort:<br>
        <input class="searchbox" type="password" name="password" size="10" maxlength="25">
        </font><br> <font size="1" face="Verdana">Auto Login: </font> <font face="Verdana" size="1">
        <input class="text" type="checkbox" name="autologin">
        </font><br> </td>
    </tr>
    <tr align="center"> 
      <td colspan="2"><font size="1" face="Verdana">
        <input type="submit" name="login" value="Login">
        </font></td>
    </tr>
    <tr align="center"> 
      <td colspan="2"><font face="Verdana"><span class="smalltext"> <font size="1"> 
        <a href="http://www.xyz.de/phpBB2/profile.php?mode=sendpassword" class="smalllink">Passwort 
        vergessen?</a></font></span><br>
        <font size="1"> <a href="http://www.xyz.de/phpBB2/profile.php?mode=register">Registrieren</a></font><font size="1">! 
        </font></font></td>
    </tr>
  </table>
  <input type="hidden" name="redirect" value="../index.php">
</form>
&nbsp; 
<?php 
} 
?>
</body>
</html>
Danke im Voraus!
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Re: Hilfe was ist an diesem Code falsch, ich dreh durch...

Beitrag von Pyramide »

narob hat geschrieben:ich bekomme ständig Fehlermeldungen
Und welche sind das?
narob
Mitglied
Beiträge: 17
Registriert: 30.05.2004 15:01

Beitrag von narob »

Hi,
Warning: Cannot modify header information - headers already sent by (output started at /homepages/15/d32369949/htdocs/xyz.de/phpbb2/test3.php:7) in /homepages/15/d32369949/htdocs/xyz.de/phpbb2/includes/sessions.php on line 182

Warning: Cannot modify header information - headers already sent by (output started at /homepages/15/d32369949/htdocs/xyz.de/phpbb2/test3.php:7) in /homepages/15/d32369949/htdocs/xyz.de/phpbb2/includes/sessions.php on line 183

Fatal error: Cannot redeclare class template in /homepages/15/d32369949/htdocs/xyz.de/phpbb2/includes/template.php on line 30
test3.php ist die datei die den obigen code enthält.
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

KB:headers_already_sent
narob
Mitglied
Beiträge: 17
Registriert: 30.05.2004 15:01

Beitrag von narob »

Ok, danke. :)

wenn ich den fehler behebe, funktioniert das Script dann auch wie es sollte? (Habe heute leider keine Möglichkeit mehr es zu testen)


Alex
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

narob hat geschrieben:wie es sollte?
Wie sollte es denn funktionieren?

PS: Wenn du den define('IN_PHPBB') bis include(common.php) Bereich nur einmal in die Datei schreibst, ist die warscheinlichkeit daß es funktioniert gleich größer :roll:
narob
Mitglied
Beiträge: 17
Registriert: 30.05.2004 15:01

Beitrag von narob »

Ok danke, aber ich kenn mich damit wirklich nicht aus. :roll:

So sollte es funktionieren: Sobald der User die xy.html aufruft soll geprüft werden, ob der User eingeloggt ist oder nicht. Wenn nicht soll eben eine Fehlermeldung und das Loginformular erscheinen.

Grüße und danke,
Alex
narob
Mitglied
Beiträge: 17
Registriert: 30.05.2004 15:01

Beitrag von narob »

So, habe jetzt alles gemacht wie du es gesagt hast, ich bekomme auch keine Fehlermeldung mehr, aber jetzt erscheint immer das Login Formular egal ob man eingeloggt ist oder nicht. Warum? :(

Folgender Code steht in der Datei:

Code: Alles auswählen

<?php 
//Benötigte Dateien und Variablen von phpBB 
define('IN_PHPBB', true); 
$phpbb_root_path = './'; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 
//Session auslesen und Benutzer-Informationen laden 
$userdata = session_pagestart($user_ip, PAGE_INDEX); 
init_userprefs($userdata); 
?>
<body>
<?php 
$userid = $userdata['user_id']; 
$sql = "SELECT * FROM " . USER_GROUP_TABLE . " WHERE user_id = '$userid'"; 
$result = $db->sql_query($sql); 
$isauth = 0; 
while ($row = $db->sql_fetchrow($result)) 
{ 
if ($row['group_id'] == 'insert_group_id_here' || $row['group_id'] == 'insert_group_id_here') 
{ 
$isauth = 1; 
} 
} 

if($userdata['session_logged_in']){ 
?>
<div align="left"> 
  <center>
    <font size="1" face="Verdana">Hallo, <?php echo $userdata[username] ?>! </font>
  </center>
</div>
<br>
<div class="nav"><font face="Verdana"><font size="1">:: </font> <a class="nav" href="http://www.xyz.de/phpBB2/profile.php?mode=editprofile"> 
  <font size="1">Profil bearbeiten</font></a></font></div>
<div class="nav"><font face="Verdana"><font size="1">:: </font> <a class="nav" href="http://www.xyz.de/phpBB2/privmsg.php?folder=inbox"> 
  <font size="1">Private Nachrichten</font></a></font></div>
<div class="nav"><font face="Verdana"><font size="1">:: </font> <a class="nav" href="http://www.xyz.de/phpBB2/login.php?logout=true&redirect=../index.php"> 
  <font size="1">Ausloggen</font></a></font></div>
<font size="1" face="Verdana"> 
<?php 
}else{ 
?>
</font> 
<form action="http://www.xyz.de/phpBB2/login.php" method="post">
  <table border="0" cellpadding="3" cellspacing="1" width="100%">
    <tr> 
      <td> <font size="1" face="Verdana">Username:<br>
        <input class="searchbox" type="text" name="username" size="10" maxlength="40">
        </font> </td>
    </tr>
    <tr> 
      <td> <font size="1" face="Verdana">Passwort:<br>
        <input class="searchbox" type="password" name="password" size="10" maxlength="25">
        </font><br> <font size="1" face="Verdana">Auto Login: </font> <font face="Verdana" size="1">
        <input class="text" type="checkbox" name="autologin">
        </font><br> </td>
    </tr>
    <tr align="center"> 
      <td colspan="2"><font size="1" face="Verdana">
        <input type="submit" name="login" value="Login">
        </font></td>
    </tr>
    <tr align="center"> 
      <td colspan="2"><font face="Verdana"><span class="smalltext"> <font size="1"> 
        <a href="http://www.xyz.de/phpBB2/profile.php?mode=sendpassword" class="smalllink">Passwort 
        vergessen?</a></font></span><br>
        <font size="1"> <a href="http://www.xyz.de/phpBB2/profile.php?mode=register">Registrieren</a></font><font size="1">! 
        </font></font></td>
    </tr>
  </table>
  <input type="hidden" name="redirect" value="../index.php">
</form>
<?php 
} 
?>
</body>
</html>
Antworten

Zurück zu „Coding & Technik“