PHP mit HTML verbinden..., wie geht das sinnvoll?

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
hanebu
Mitglied
Beiträge: 44
Registriert: 23.05.2006 12:48

PHP mit HTML verbinden..., wie geht das sinnvoll?

Beitrag von hanebu »

Sooo, nachdem das Login/Logout-Problem gelöst ist, soll das Ganze auch noch schön aussehen.

Hier ist der Code für die Login/Logout-Funktionen:

Code: Alles auswählen

<?php 
//Benötigte Dateien und Variablen von phpBB 
define('IN_PHPBB', true); 
$phpbb_root_path = '../forums/'; 
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); 

//Session auslesen und Benutzer-Informationen laden 
if ( $userdata['session_logged_in'] ) 
{ 
$username = $userdata['username']; 
$link = append_sid('../forums/login.'.$phpEx.'?logout=true&sid='.$userdata['session_id']); 
echo 'Hallo '.$username.', <a href="'.$link.'">Logout</a>'; 
} 
else 
{ 
echo '<b>Hallo</b> Gast, <a href="'. append_sid($phpbb_root_path . "login.".$phpEx) .'">Login</a>'; 
} 

?>
Das Ergebnis der Ausgabe:
Hallo Gast, Login
oder:
Hallo Onkel Müller, Logout
Ich habe es so angepasst, dass anstelle des Login-Links, der zum Forenlogin verweist, eine Login-Tabelle angezeigt wird.

Code: Alles auswählen

<?php 
//Benötigte Dateien und Variablen von phpBB 
define('IN_PHPBB', true); 
$phpbb_root_path = '../forums/'; 
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); 

//Session auslesen und Benutzer-Informationen laden 
if ( $userdata['session_logged_in'] ) 
{ 
$username = $userdata['username']; 
$link = append_sid('../forums/login.'.$phpEx.'?logout=true&sid='.$userdata['session_id']);
echo 'Hallo '.$username.', <a href="'.$link.'">Logout</a>'; 
} 
else 
{?> 
<div align="left">
  <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="540" bgcolor="#B2B2B2">
    <tr>
    <form action="http://www.mcpokers.com/forums/login.php" method="post"> 
      <td width="80" height="20" align="left">
      <p align="center">
      <font face="Verdana" style="font-weight:700" color="#FFFFFF" size="1">Username:</font></td>
      <td width="50" align="left">
      <input type="text" name="username" size="16" style="FONT-FAMILY: Verdana; COLOR: #006600; FONT-SIZE: 11px; FONT-STYLE: normal; background: #FFFFFF; border: solid 1px #000000;"></td>
      <td width="82">
      <p align="center"><font face="Verdana" size="1"><b><font color="#FFFFFF">Password:</font></b><font color="#FFFFFF"><i>
      </i></font> </font></td>
      <td width="50"><input type="password" name="password" size="16" style="FONT-FAMILY: Verdana; COLOR: #006600; FONT-SIZE: 11px; FONT-STYLE: normal; background: #FFFFFF; border: solid 1px #000000;"></td>
      <td width="80">
      <p align="center"><b><font face="Verdana" size="1" color="#FFFFFF">Autologin?</font></b></td>
      <td width="22"><input type="checkbox" name="autologin1" value="ON"></td>
      <input type="hidden" name="redirect" value="http://www.mcpokers.com/test_files/test1.php"> 
      <td width="42"><colspan="2" align="left">
  <INPUT TYPE="submit" NAME="login" style="border: 1px solid #FFFFFF; font-family: Verdana; font-size: 10px; background-color: #000000; color: #FFFFFF;" value="Submit" ></td>
</form>
   </tr>
  </table>
</div>
<?
} 

?>
Nun ist die Tabelle nur zu sehen wenn man ausgeloggt ist (so wie es sein soll).

Ich hätte gerne, wenn man eingeloggt ist, NICHT nur die normale Textanzeige:
Hallo Onkel Müller, Logout
sondern diese Anzeige ebenfalls in einer Tabellenzelle mit der selben Hintergrundfarbe.

Das habe ich nicht hinbekommen.

Wie muss das:

Code: Alles auswählen

{ 
$username = $userdata['username']; 
$link = append_sid('../forums/login.'.$phpEx.'?logout=true&sid='.$userdata['session_id']);
echo 'Hallo '.$username.', <a href="'.$link.'">Logout</a>'; 
} 

mit dieser Tabelle:

Code: Alles auswählen

<div align="left">
  <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="250" id="AutoNumber1" bgcolor="#C0C0C0">
    <tr>
      <td width="240">&nbsp;</td>
      <td>PHP-CODE</td>
    </tr>
  </table>
</div>
"verknispelt" werden?

Wenn ich versuche den PHP-Code in die Tabelle einzubauen, bekomme ich jedesmal Fehlermeldungen. Wenn ich das HTML ausklammere, auch.

Wie macht man das am besten?

Viele Grüße,
Tommy
Zothos
Mitglied
Beiträge: 194
Registriert: 31.08.2005 15:31
Wohnort: Ubstadt-Weiher

Beitrag von Zothos »

Hallo, also eigndlich müsste es so recht einfach gehen:

Code: Alles auswählen


<?php
//Benötigte Dateien und Variablen von phpBB
define('IN_PHPBB', true);
$phpbb_root_path = '../forums/';
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);

//Session auslesen und Benutzer-Informationen laden
if ( $userdata['session_logged_in'] )
{
$username = $userdata['username'];
$link = append_sid('../forums/login.'.$phpEx.'?logout=true&sid='.$userdata['session_id']);
?>

<div align="left">
  <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="250" id="AutoNumber1" bgcolor="#C0C0C0">
    <tr>
      <td width="240">&nbsp;</td>
      <td>
            <?php echo 'Hallo '.$username.', <a href="'.$link.'">Logout</a>'; ?>
      </td>
    </tr>
  </table>
</div>

<?php
}
else
{?>
<div align="left">
  <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="540" bgcolor="#B2B2B2">
    <tr>
    <form action="http://www.mcpokers.com/forums/login.php" method="post">
      <td width="80" height="20" align="left">
      <p align="center">
      <font face="Verdana" style="font-weight:700" color="#FFFFFF" size="1">Username:</font></td>
      <td width="50" align="left">
      <input type="text" name="username" size="16" style="FONT-FAMILY: Verdana; COLOR: #006600; FONT-SIZE: 11px; FONT-STYLE: normal; background: #FFFFFF; border: solid 1px #000000;"></td>
      <td width="82">
      <p align="center"><font face="Verdana" size="1"><b><font color="#FFFFFF">Password:</font></b><font color="#FFFFFF"><i>
      </i></font> </font></td>
      <td width="50"><input type="password" name="password" size="16" style="FONT-FAMILY: Verdana; COLOR: #006600; FONT-SIZE: 11px; FONT-STYLE: normal; background: #FFFFFF; border: solid 1px #000000;"></td>
      <td width="80">
      <p align="center"><b><font face="Verdana" size="1" color="#FFFFFF">Autologin?</font></b></td>
      <td width="22"><input type="checkbox" name="autologin1" value="ON"></td>
      <input type="hidden" name="redirect" value="http://www.mcpokers.com/test_files/test1.php">
      <td width="42"><colspan="2" align="left">
  <INPUT TYPE="submit" NAME="login" style="border: 1px solid #FFFFFF; font-family: Verdana; font-size: 10px; background-color: #000000; color: #FFFFFF;" value="Submit" ></td>
</form>
   </tr>
  </table>
</div>
<?
}

?> 
Wo ist das Problem :P. Btw manchmal sind fehlermeldungen recht hilfreich wenn du hilfe willst :P
hanebu
Mitglied
Beiträge: 44
Registriert: 23.05.2006 12:48

Beitrag von hanebu »

Danke schön. :grin: :o

Aber es kommt nach dem einloggen nur die normale Textausgabe, die Tabelle ist nicht da.

Woran kann das denn liegen?

Probiers mal aus, die Datei:

link entfernt

Login:
test/test
Antworten

Zurück zu „phpBB 2.0: Mod Support“