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.
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 »

Helmut: Das problem ist, dass unterverzeichnis/deine_seite matchen würde.
Ich habs bei der gallery dann einfach so gemacht:
finde:

Code: Alles auswählen

	if (!sizeof($on_page))
	{
		$on_page[1] = '';
	}
danach einfügen:

Code: Alles auswählen

	// phpBB Gallery integration
	if ((utf8_substr($on_page[1], 0, utf8_strlen('unterverzeichnis'))) == 'unterverzeichnis')
	{
		$anderes_on_page[1] = $on_page[1];
		$on_page[1] = utf8_substr($on_page[1], 0, utf8_strlen('unterverzeichnis'));
	}
dann

Code: Alles auswählen

	case 'unterverzeichnis':
		$on_page[1] = $anderes_on_page[1];
		do_stuff();
	break;
funktioniert ganz gut
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 nickvergessen,

danke dir für deine Antwort, das hat mich ein gutes Stück vorangebracht. Es funktioniert schon fast soweit, nur die Namen der Themenseiten werden nicht aus der Datenbank ausgelesen. Ich habe dazu eine kleine Funktion gebastelt:

viewonline.php

Code: Alles auswählen

[...]

    // SVI integration
    if ((utf8_substr($on_page[1], 0, utf8_strlen('unterseite'))) == 'unterseite')
    {
        $svi_on_page[1] = $on_page[1];
        $on_page[1] = utf8_substr($on_page[1], 0, utf8_strlen('unterseite'));
    }
    //----------------------------

[...]

        //SVI integration
        case 'unterseite':
            include($phpbb_root_path . 'includes/functions_svi_viewonline.' . $phpEx);
            $on_page[1] = $svi_on_page[1];
            make_svi_online_list($on_page, $row['session_page']);
        break;
        //----------------------
 
Die neue Funktion:

Code: Alles auswählen

function make_svi_online_list($on_page, $session_page)
{
    global $user, $db;
    global $phpbb_root_path, $phpEx;
    global $location, $location_url;

    // Language file (see documentation related to language files)
    $user->setup('svi/svi_online');

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

    $svi_path = "unterseite/";
    $on_page[0] = '';
    $on_page[1] = str_replace($svi_path, ' ', $on_page[1]);

    $page = '';
    $page = implode('',$on_page);

    // aktiven MenuTab bestimmen
    $sql = 'SELECT  tab_name, tab_page, tab_page2, subtab_1
            FROM ' . SVI_NAVIGATION_TABLE . "
            WHERE subtab_1 != 0  AND  tab_page2 = '' AND tab_page LIKE '$page'";
    $result = $db->sql_query($sql);
    $nav = $db->sql_fetchrow($result);

    $location = sprintf($user->lang['SVI_VIEWONLINE'], $user->lang($nav['tab_name']));
    $location_url = append_sid("{$phpbb_root_path}". $session_page);

    $db->sql_freeresult($result);

    return;
}
 
Mein Problem ist nun folgendes: Zu Auswahl des Textes für die Anzeige verwende ich $page welche den Namen der Datei z.B. "testseite" enthält, was ich auch mit echo $page; überprüfen kann. Damit sollte nun in der Datenbankabfrage nach dem Begriff gesucht und der richtige Datensatz ausgegeben werden. Leider klappt das aber nicht, es bleibt $nav['tab_name'] leer. Gehe ich aber her und füge vor der Datenbankabfrage $page ='testseite'; ein, dann wird mir aus der Datenbank der richtige Datensatz ausgegeben. Irgendwo muss da noch ein Fehler drinnen sein, aber ich finde den nicht, kannst du mir da weiterhelfen?

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
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,

nochmal hochschieb .... :wink:

Ich bin immer noch nicht dahinter gekommen, warum der Inhalt in $page nicht übernommen wird, sondern nur wenn ich es vor der Datenbankabfrage manuell per $page ="irgendwas"; eingebe. Das komische ist ja, wenn ich genau vorher mit echo $page; mir den Inhalt ausgeben lasse, dann ist der genau identisch. Hat einer von euch eine Idee warum es nicht klappt und wie ich den Code anpassen müsste, damit es klappt?

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
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,

und nochmal hochschieb .... :wink:

Ich suche immer noch nach einer Lösung...... :cry:

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
HJW
Mitglied
Beiträge: 1302
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,

vielleicht ein Versuch. Ich mußte bei einer ähnlichen Geschichte nicht nur Global $db sondern auch Global $result setzten.
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 HJW,

danke dir für die Antwort.

Ich habe es gerade ausprobiert, aber es bringt auch nichts, wenn ich Global $result mit rein nehme.

Das ist echt verzwickt und ich komme einfach nicht dahinter, wo genau die Ursache liegt warum es nicht geht, aber es muss irgendwas mit der Übergabe in die Datenbankabfrage zu tun haben.

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
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,

und nach einiger Zeit nochmal hochschieb .... :wink:

Ich suche immer noch nach der Ursache für dieses Verhalten...... :cry:

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
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,

ich hatte ganz vergessen zu schreiben dass ich den Fehler gefunden hatte, es war ein einfacher Tippfehler. :D

Code: Alles auswählen

WHERE subtab_1 != 0  AND  tab_page2 = '' AND tab_page LIKE ' $page'";
muss aber so lauten:

Code: Alles auswählen

WHERE subtab_1 != 0  AND  tab_page2 = '' AND tab_page LIKE '$page' ";
Gruß Helmut :wink:
Ich bin nicht ganz dicht.... na und.
Antworten

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