Seite 1 von 2

auf http://www.example.com/datei.php nur Username ausgeben

Verfasst: 13.08.2013 16:52
von chrisi01
Hallo

wie kann ich ohne großen Aufwand in einer eigenen PHP Datei die direkt im Dateiroot des Forums liegt, den Usernamen anzeigen lassen der gerade die Seite aufruft.

Ich such seit Tagen und finde nix passendes. Entweder total aufwendig mit Template & co oder es funktioniert einfach nicht. Müsste doch mit einen kleine Snippet zu schaffen sein oder?

mfg

Chris

Re: auf http://www.example.com/datei.php nur Username ausgeb

Verfasst: 13.08.2013 18:11
von mad-manne
Hier wäre das passende Lesefutter ;-)

https://wiki.phpbb.com/Deutsch:Vorlage_ ... ene_Seiten

Gruss,
Manne.

Re: auf http://www.example.com/datei.php nur Username ausgeb

Verfasst: 13.08.2013 18:58
von Talk19zehn
Hi, ich ergänze den Lesestoff um eine Anlage einer About.Us, die nur beispielweise meinerseits erwähnt ist und ggf. Anhaltpunkte liefert - :wink:
https://www.phpbb.com/kb/article/add-a- ... -to-phpbb/

Die Frage ist meinerseits, was ist gewollt, gemeint?
chrisi01 hat geschrieben:wie kann ich ohne großen Aufwand in einer eigenen PHP Datei die direkt im Dateiroot des Forums liegt, den Usernamen anzeigen lassen der gerade die Seite aufruft.
Demnach ist die index_body.html zu includieren, die ein "Who is online" "inne hält"?

Grübelnde Grüße, die dir evtl. in Kombination der zuvor benannten Hilfe ggf. weiterhelfen.

Re: auf http://www.example.com/datei.php nur Username ausgeb

Verfasst: 13.08.2013 19:21
von chrisi01
hi

danke euch. Um bei meinen Beispiel zu bleiben:

bild.php:

Code: Alles auswählen

    <?php
    define('IN_PHPBB', true);
    $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
    $phpEx = substr(strrchr(__FILE__, '.'), 1);
    include($phpbb_root_path . 'common.' . $phpEx);

    // Start session management
    $user->session_begin();
    $auth->acl($user->data);
    $user->setup();

    page_header('Title Here');

    $template->set_filenames(array(
        'body' => 'bild_body.html',
    ));
    
    $trans = $user->data['username'];
    
    $template->assign_vars(array(
    'CONTENT'    => $trans ));

    make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));
    page_footer();
    ?>
und /styles/SimpleGreen/template/bild_body.html

Code: Alles auswählen

<div class="panel">
   <div class="inner"><span class="corners-top"><span></span></span>

   <div class="content">
      <p>
         {CONTENT}
      </p>
   </div>

   <span class="corners-bottom"><span></span></span></div>
</div>
 
bekomm ich nur ein Anonymous zurück ( http://www.example.com/bild.php ) obwohl ich sicher eingeloggt bin. Auch eine Verlinkung aus dem Forum auf die Seite bringt nur Anonymous, es müsste später aber auch mit einem Direktaufruf gehen

was hab ich falsch gemacht?

P.S. es ist Absicht das ich den Footer/Header Include rausgeworfen habe, ich will wirklich NUR(!!) den Namen haben. Die ganzen DIVs werf ich dann auch noch raus.

mfg

Chris

Re: auf http://www.example.com/datei.php nur Username ausgeb

Verfasst: 13.08.2013 19:36
von Kirk
Schau dir doch mal die verlinkte Seite von mad-manne an, dort wird alles erklärt.

Edit:
Ich hab in meinem Board auch eine zusätzliche Seite eingefügt, vielleicht hilft dir das weiter.
Hier mal der php Code:

Code: Alles auswählen

<?php
/***
*
* @package Usermap
* @version $Id$
* @copyright (c) 2011 Kirk  www.quad-atv-freunde-wunsiedel.de
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
// Benötigte Dateien und Variablen von phpBB
 define('IN_PHPBB', true);
 $phpbb_root_path = './';
 $phpEx = substr(strrchr(__FILE__, '.'), 1);
 include($phpbb_root_path . 'common.' . $phpEx);
 
 // Da wir weiter unten noch einen Avatar anzeigen lassen wollen,
 // benötigen wir noch die dazu passende Funktion
 // die in der Datein includes/functions_display.php vorhanden ist.
 include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
 
 // Session auslesen und Benutzer-Informationen laden
 $user->session_begin();  // Session auslesen
 $auth->acl($user->data); // Benutzer-Informationen laden
 $user->setup('mods/slideshow'); // Sprachvariablen aus eigener Sprach Datei laden
 $user->setup('viewtopic');
 if ($user->data['user_id'] == ANONYMOUS)
{
    login_box('', $user->lang['LOGIN_VIEWFORUM']);
}


 
 /*
 * Nun folgt erst Dein PHP Code für die neue Seite, also:
 * Variablen setzen, Datenbankabfragen, Einfügen und Entfernen von Einträgen usw...
 */
 $example_variable = sprintf($user->lang['CURRENT_TIME'], $user->format_date(time()));

 
 $template->assign_block_vars('navlinks', array(
 'FORUM_NAME' => $user->lang['SLIDESHOW'],
 'U_VIEW_FORUM' => append_sid('slideshow.'.$phpEx),
 )); 


 // Seiten Titel, diese Sprach Variable sollte in der Sprach Datei,
 // welche weiter oben genannt wurde, definiert sein.
 page_header($user->lang['SLIDESHOW']);
 
 // Defniere nun den Dateinamen Deines Templates welches Du benutzen moechtest.
 // Dies ist der Name von Deinem Template welches unter /styles/<style>/templates/ zu finden ist.
 $template->set_filenames(array(
 'body' => 'slideshow.html',
 ));
 

 // Script vervollständigen und Seite anzeigen lassen.
 make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));
 page_footer();
 ?>
Um anzuzeigen wer diese Seite gerade besucht, habe in der viewonline.php das hier eingefügt:

Code: Alles auswählen

        case 'slideshow':
            $location = $user->lang['VIEWING_SLIDESHOW'];
            $location_url = append_sid("{$phpbb_root_path}slideshow.$phpEx");
        break;
Zusätzlich in der root/language/de/common.php das hier:

Code: Alles auswählen

'VIEWING_SLIDESHOW'            => 'Betrachtet die „Slideshow“',

Re: auf http://www.example.com/datei.php nur Username ausgeb

Verfasst: 13.08.2013 22:50
von BNa
chrisi01 hat geschrieben:bekomm ich nur ein Anonymous zurück
Schalte mal den phpbb3 DebugModus an und berichte, was er beim besuchen Deiner Seite anzeigt.

https://www.phpbb.de/kb/debugmode

Re: auf http://www.example.com/datei.php nur Username ausgeb

Verfasst: 14.08.2013 16:05
von chrisi01
hi

auch mit debug zeigt er nur Anonymous an. Eingeschaltet war er weil ich im Forum rechts unten ein paar debugdaten (Time : 0.061s | 10 Queries | GZIP : On) hatte. Also richtig gemacht hab ich alles. Kann es sein, dass ich die debugausgabe einfach schon durch das entfernen der includes mit rausgeworfen habe?

mfg

Chris

Re: auf http://www.example.com/datei.php nur Username ausgeb

Verfasst: 14.08.2013 21:47
von BNa
Bin ich nicht sicher aber ich meine, das da irgendwas schräg sein müsste, da es augenscheinlich funktionieren sollte.

Re: auf http://www.example.com/datei.php nur Username ausgeb

Verfasst: 14.08.2013 21:55
von Miriam
Schon mal die universelle Template-Variable S_USERNAME benutzt?
Solltest Du über all per {S_USERNAME} in einem Template einbinden können.

Re: auf http://www.example.com/datei.php nur Username ausgeb

Verfasst: 14.08.2013 21:57
von BNa
Das gute liegt so nah :lol: