Seite 2 von 2

Re: viewonline.php für eigene Seiten nutzen

Verfasst: 06.07.2009 10:31
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

Re: viewonline.php für eigene Seiten nutzen

Verfasst: 07.07.2009 20:04
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

Re: viewonline.php für eigene Seiten nutzen

Verfasst: 09.07.2009 14:42
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

Re: viewonline.php für eigene Seiten nutzen

Verfasst: 14.07.2009 22:52
von Helmut
Hallo,

und nochmal hochschieb .... :wink:

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

Gruß Helmut

Re: viewonline.php für eigene Seiten nutzen

Verfasst: 18.07.2009 11:31
von HJW
Hallo Helmut,

vielleicht ein Versuch. Ich mußte bei einer ähnlichen Geschichte nicht nur Global $db sondern auch Global $result setzten.

Re: viewonline.php für eigene Seiten nutzen

Verfasst: 18.07.2009 12:06
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

Re: viewonline.php für eigene Seiten nutzen

Verfasst: 26.07.2009 19:00
von Helmut
Hallo,

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

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

Gruß Helmut

Re: viewonline.php für eigene Seiten nutzen

Verfasst: 30.07.2010 16:10
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: