viewonline.php für eigene Seiten nutzen

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

viewonline.php für eigene Seiten nutzen

Beitrag von Helmut »

Hallo,

ich suche schon länger nach einer Möglichkeit, wie ich in der viewonline.php meine eigene Seiten rein bringe. Wie das mit einer einzelnen Seite geht, das ist mir schon klar, aber ich brauche es für meine neue Homepage und da sind es fast 300 Seiten. Muss ich jetzt jede einzelne Seite da mit case 'irgendwas': reinbringen, oder gibt es da eine bessere Lösung wo ich die Daten aus der Datenbank entnehmen und eintragen kann.

Bis jetzt ist mir noch nichts dazu eingefallen wie ich das umsetzen kann, daher würde ich mich um etwas Unterstützung freuen.

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
piero
Mitglied
Beiträge: 476
Registriert: 10.11.2008 17:15
Wohnort: Schweiz

Re: viewonline.php für eigene Seiten nutzen

Beitrag von piero »

Hi

Ich denke, du könntest den "default:" Teil so umschreiben, dass in der Datenbank geprüft wird, ob die Seite existiert und gegebenenfalls den Anzeigetext + Link dazu ausliest...
HJW
Mitglied
Beiträge: 1291
Registriert: 20.04.2007 20:48
Wohnort: 45481 Mülheim an der Ruhr
Kontaktdaten:

Re: viewonline.php für eigene Seiten nutzen

Beitrag von HJW »

Hallo Helmut,

versuch es mal mit

Code: Alles auswählen

		default:
			$location = $page ;
			$location_url = append_sid("{$phpbb_root_path}. $page . $phpEx");
		break;
Benutzeravatar
Unimatrix_0
Mitglied
Beiträge: 392
Registriert: 03.11.2007 10:50
Kontaktdaten:

Re: viewonline.php für eigene Seiten nutzen

Beitrag von Unimatrix_0 »

also laut Wiki sollte das nicht klappen

Code: Alles auswählen

case 'neueseite':
    $location = 'Betrachtet "Eure Seite"';
    $location_url = append_sid("{$phpbb_root_path}neueseite.$phpEx");
 break;
Wichtig: zu: case 'neueseite': in diesem Fall heißt die Seite, die ihr erstellen wollt: "neueseite.php". Ändert den Code also entsprechend ab (z.B. bei "teampage.php": case 'teampage')

Entsprechend dazu müsst ihr $location_url = append_sid("{$phpbb_root_path}neueseite.$phpEx"); ebenfalls abändern.
HJW
Mitglied
Beiträge: 1291
Registriert: 20.04.2007 20:48
Wohnort: 45481 Mülheim an der Ruhr
Kontaktdaten:

Re: viewonline.php für eigene Seiten nutzen

Beitrag von HJW »

Hallo,

sorry, habe noch was vergessen:

hatte da noch was eingefügt. (Ist schon länger her :oops: )

Finde:

Code: Alles auswählen

switch ($on_page[1])
Davor einfügen:

Code: Alles auswählen

$page = $on_page[1];
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Re: viewonline.php für eigene Seiten nutzen

Beitrag von nickvergessen »

HJW hat geschrieben:Hallo Helmut,

versuch es mal mit

Code: Alles auswählen

		default:
			$location = $page ;
			$location_url = append_sid("{$phpbb_root_path}. $page . $phpEx");
		break;
ähm müsste wenn

Code: Alles auswählen

		default:
			$location = $page;
			$location_url = append_sid("{$phpbb_root_path}{$page}.$phpEx");
		break;
sein
kein Support per PN
HJW
Mitglied
Beiträge: 1291
Registriert: 20.04.2007 20:48
Wohnort: 45481 Mülheim an der Ruhr
Kontaktdaten:

Re: viewonline.php für eigene Seiten nutzen

Beitrag von HJW »

Hallo Nickvergessen,

danke für die Korrektur. Ich hatte mir bisher nur die Seiten anzeigen lassen und nicht auf die erzeugte URL geachtet. :oops:
Da ich Dateien mit Zahlen dabei habe, mußte ich nur noch das

Code: Alles auswählen

preg_match('#^([a-z/_]+)#i', $row['session_page'], $on_page);
durch das

Code: Alles auswählen

preg_match('#^([a-z/_0-9]+)#i', $row['session_page'], $on_page);
ersetzen.
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Re: viewonline.php für eigene Seiten nutzen

Beitrag von nickvergessen »

das wurde übrigens für die nächste Version auch so ähnlich angepasst:
http://code.phpbb.com/repositories/diff ... ev_to=9428
kein Support per PN
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: viewonline.php für eigene Seiten nutzen

Beitrag von Helmut »

Hallo,

danke euch schon mal für die Antworten.

Irgendwie komme ich nicht ganz klar, wie genau ich das nun machen soll. Vom Prinzip her müsste das doch in einer Schleife laufen. Meine Themenseiten befinden sich alle in einem Unterverzeichnis. So habe ich es jetzt probiert:

Code: Alles auswählen

       case 'unterverzeichnis/':
            $page = $on_page[1];
            
            preg_match('#^([a-z/_0-9]+)#i', $row['session_page'], $on_page);

            switch ($on_page[1])
            {
                default:
                    $location = $page;
                    $location_url = append_sid("{$phpbb_root_path}unterverzeichnis/{$page}.$phpEx");
                break;
            }            
        break; 
Leider wird in viewonline nicht die Themenseite angezeigt, da steht nur immer "Foren-Übersicht" mit dem Link zur index.php drinnen. Wie muss ich den Code anpassen damit meine Seiten angezeigt werden?

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
HJW
Mitglied
Beiträge: 1291
Registriert: 20.04.2007 20:48
Wohnort: 45481 Mülheim an der Ruhr
Kontaktdaten:

Re: viewonline.php für eigene Seiten nutzen

Beitrag von HJW »

Hallo Helmut,

ich hab auch Seiten in Unterverzeichnisse, die werden dann in der Form unterverzeichnis/datei angezeigt.

bei mir sieht das so aus
ersetzte bei dir

Code: Alles auswählen

          case 'unterverzeichnis/':
                $page = $on_page[1];
                
                preg_match('#^([a-z/_0-9]+)#i', $row['session_page'], $on_page);

                switch ($on_page[1])
                {
                    default:
                        $location = $page;
                        $location_url = append_sid("{$phpbb_root_path}unterverzeichnis/{$page}.$phpEx");
                    break;
                }            
            break; 
durch

Code: Alles auswählen

      default:
         $location = $on_page[1] ;
         $location_url = append_sid("{$phpbb_root_path}{$on_page[1]}.$phpEx");
      break;
und wenn du Dateien mit Zahlen hast:
Suche

Code: Alles auswählen

	preg_match('#^([a-z/_]+)#i', $row['session_page'], $on_page);
	if (!sizeof($on_page))
	{
		$on_page[1] = '';
		
	}
ersetze mit

Code: Alles auswählen

	preg_match('#^([a-z0-9/_-]+)#i', $row['session_page'], $on_page);
	if (!sizeof($on_page))
	{
		$on_page[1] = '';
		
	}	
Du brauchst da mE keine Schleife, die Abfrage wird doch für jeden User einzeln aufgerufen, und der ist meistens nur auf einer Seite. :wink:
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“