Bitte sehr um Hilfe, einbinden Plugin auf externe Seite

Hast du Probleme oder Fragen bei der Einrichtung bestimmter Plugins ? Diese kannst du hier loswerden.
Antworten
der Uwe
Beiträge: 89
Registriert: 22. Dez 2008, 00:40
Wohnort: Oranienburg
Kontaktdaten:

Bitte sehr um Hilfe, einbinden Plugin auf externe Seite

Beitrag von der Uwe »

Erst mal Glückwunsch zu diesem tollen Programm,
benutze die neueste Version mit allen Plugins im modernen Style, hatte keinerlei Probleme mit dem Einbinden der Plugins dort wo ich sie haben wollte auf den admidio-Seiten . Habe seit Jahren nur html und mit java gebastelt. Von php null Wissen. Ich bringe mir es durch probieren bei, so hoffte ich...

Jetzt möchte ich das Sidebar Online Plugin auf eine externe Seite einbauen. Ich sitze seit Tagen drann und es will nicht klappen

meine externe Seite, die ich vor dem Hochladen auf den Server von .html in .php umbenenne..
liegt auf dem server unter admidio/test/test.php

hier mein script: test.php

<html>
<head>
<title>testseite</title>
</head>
<body>
<?php
include($_SERVER['DOCUMENT_ROOT']. "/admidio/adm_plugins/sidebar_online/sidebar_online.php");
?>
</body>
</html>

dann soll in die common.php (die unter /admidio/adm_program/system/common.php zu finden ist) ganz am Anfang folgender Script-Schnipzel eingebunden werden

<?php include_once($_SERVER['DOCUMENT_ROOT']."/admidio/adm_program/system/common.php");?>

es erscheint folgende Anzeige Bild die Anzeige arbeitet, aber es ist mir bisher nicht gelungen die Zeichen über online sind: weg zubekommen. ich habe alles was ich weis angewendet jedoch ohne Erfolg. Wer kann mir helfen, so das die Anzeige ohne die wirren Zeichen über online sind: angezeigt wird.

Ich weis nicht was ich falsch mache und hoffe diese Problem anschaulich und nachvollziebar für Euch darzustellen.

Bitte Bitte helft mir..mit weihnachtlichem Gruss

der Uwe
fly2me
Former team member
Beiträge: 300
Registriert: 27. Nov 2006, 10:38
Wohnort: Zürich

Beitrag von fly2me »

In der config.php im Ordner \adm_plugins\sidebar_online die letzte Zeile:

Code: Alles auswählen

//Text der über den angezeigten Benutzern steht (Default = "Online sind:<br />"
$plg_online_text = "Online sind:<br />";
den Text dort anpassen, was du haben möchtest.
Willst du nichts ausgeben, leer lassen:

Code: Alles auswählen

//Text der über den angezeigten Benutzern steht (Default = "Online sind:<br />"
$plg_online_text = "";
Willst du einen eigenen Text ausgeben:

Code: Alles auswählen

//Text der über den angezeigten Benutzern steht (Default = "Online sind:<br />"
$plg_online_text = "[b]Mein Text:[/b]<br />";
P.S. Bild Das geschnörkel am Anfang kommt daher, dass deine Datei kein UTF8 ist. Wandele mit einem Editor deine Datei in UTF8 um. Zum Beispiel im Notepad Editor bei Speichern Unter, anstatt ANSI dort UTF8 wählen.
Zuletzt geändert von fly2me am 22. Dez 2008, 07:47, insgesamt 2-mal geändert.
fly2me
Former team member
Beiträge: 300
Registriert: 27. Nov 2006, 10:38
Wohnort: Zürich

Beitrag von fly2me »

Möchtest du hingegen, dass der Text als Standard bei der Übersicht so bleibt, dann mache eine Kopie der Datei sidebar_online.php in dem Ordner \adm_plugins\sidebar_online.
Als Beispiel hier der Name der Kopierten Datei: sidebar_online_neu.php
Anstatt die orginale Datei zu verwenden, nimmst du dann diese Kopie. Beispiel in deinem Script:

Code: Alles auswählen

include($_SERVER['DOCUMENT_ROOT']. "/admidio/adm_plugins/sidebar_online/sidebar_online_neu.php"); 
Nun änderst du noch in deriner Kopie sidebar_online_neu.php bei Zeile 97 echo $plg_online_text;
in das Um, was du haben möchtest.
Möchtet du dort einen eigenen Text, dann schreibe:

Code: Alles auswählen

if($g_db->num_rows($result) > 0)
{
    echo "irgendas, was hier stehen soll<br />";
    $usr_id_merker  = 0;
möchtest du nichts ausgeben, schreibe einfach so:

Code: Alles auswählen

if($g_db->num_rows($result) > 0)
{
    //echo $plg_online_text;
    $usr_id_merker  = 0;
( // ) Sind kommentare, es wird also vom Interpreter übersprungen.
der Uwe
Beiträge: 89
Registriert: 22. Dez 2008, 00:40
Wohnort: Oranienburg
Kontaktdaten:

jetzt Fehler im Startaufruf von admidio

Beitrag von der Uwe »

Danke für die Antwort,

habe das Plugin nochmals entpackt, neu auf den Server kopiert und beim bearbeiten genau drauf geachtet das ich mit UTF8 abspeichere.

nach dem Aufruf zeigt die Anzeige der externen Datei nun:

Momentan ist kein anderer Benutzer online

also keine Schnörkel mehr. Klasse aber nun kommt aber das nächste Problem beim Aufruf von admido kommt folgende Fehlermeldung:

Warning: Cannot modify header information - headers already sent by (output started at /home/www/admidio/adm_program/system/common.php:1) in /home/www/admidio/adm_themes/modern/overall_header.php on line 51
und in der Zeile 51 steht:

header('Content-type: text/html; charset=utf-8');

was mach ich jetzt ? Was muss jetzt dort geändert werden ?


gruss

der Uwe
Benutzeravatar
fasse
Administrator
Beiträge: 6167
Registriert: 12. Nov 2005, 16:06

Beitrag von fasse »

Hallo Uwe,

hast du die common.php evtl. auch mal geöffnet und nicht als UTF8 gespeichert ?
Falls ja, speicher die bitte auch als UTF8 ohne BOM ab oder ersetz sie mit einer neuen heruntergeladenen Version.

Gruß
Fasse
der Uwe
Beiträge: 89
Registriert: 22. Dez 2008, 00:40
Wohnort: Oranienburg
Kontaktdaten:

Fehler besteht weiterhin

Beitrag von der Uwe »

Hallo Fasse,

habe alles so probiert wie Du geschrieben hast, die Fehlermeldung bleibt

common.php frisch entpackt auf Server geladen admidio läuft,
dann die common.php mit der Scriptzeile:

<?php include_once($_SERVER['DOCUMENT_ROOT']."/admidio/adm_program/system/common.php");?>

modifiziert mit Editor als UTF8 gespeichert auf den Server geladen. Die zuersetzende common.php
vorher auf dem Server gelöscht.... Fehler beim Aufruf von admidio wie geschildert.

Nun das merkwürdige: die common.php vom Server geladen, Scriptzeile entfernt gespeichert, hochgeladen - kein Fehler - alles bis auf die externe Seite klappt.

Frage dazu: muss ich überhaupt die common.php ändern ? Wo packe ich meine Seite rein damit ich
nichts in der common.php ändern muss.

Ich will diese Seite mit iframe in admidio fremde Seiten einbinden und mit

<META HTTP-EQUIV="Refresh" CONTENT="30">

alle 30 Sekunden aktualisieren.

Würde das überhaupt klappen, oder gibt es das Fehler die die OnlineVerwaltung von admidio stören würden.

Vieleicht wäre es möglich mir eine common.php mit der benötigten Änderung zu zumailen, dann wissen wir ob es bei mir liegt. Oder die Möglichkeit wie ich sie ebend beschrieben habe.

Wenn ich es hinbekomme gibts ein Tatto mit "admidio vor ever"

gruss

der Uwe
fly2me
Former team member
Beiträge: 300
Registriert: 27. Nov 2006, 10:38
Wohnort: Zürich

Beitrag von fly2me »

Uwe, sende mir die betreffende Datei bitte mal zu.

Email per PM
matzman2000
Former team member
Beiträge: 1087
Registriert: 2. Sep 2007, 17:12
Wohnort: Itzstedt
Kontaktdaten:

Re: Fehler besteht weiterhin

Beitrag von matzman2000 »

der Uwe hat geschrieben:common.php frisch entpackt auf Server geladen admidio läuft,
dann die common.php mit der Scriptzeile:

<?php include_once($_SERVER['DOCUMENT_ROOT']."/admidio/adm_program/system/common.php");?>

modifiziert mit Editor als UTF8 gespeichert auf den Server geladen. Die zuersetzende common.php
vorher auf dem Server gelöscht.... Fehler beim Aufruf von admidio wie geschildert.
Wieso modifizierst Du die common.php? Das Einbinden dieser Datei für Plugins in externe Seiten muss innerhalb Deiner externen (Test)Datei erfolgen (am besten gleich am Anfang). Das ist aber in der Dokuauch so beschrieben.
der Uwe hat geschrieben:Frage dazu: muss ich überhaupt die common.php ändern ?
Um es nochmal direkt zu sagen: NEIN! KEINE Änderung an der common.php vornehmen.

Gruss,
Matze
der Uwe
Beiträge: 89
Registriert: 22. Dez 2008, 00:40
Wohnort: Oranienburg
Kontaktdaten:

Re: Fehler besteht weiterhin

Beitrag von der Uwe »

Hallo Matze,

Du hast ja so recht, man sollte die Prüfungsaufgabenn ganz genau lesen. Mist..

Aber ich habe jetzt den Serverweg zur common.php an erster Stelle in meine externe Seite eingebaut
nach dem

<META HTTP-EQUIV="Refresh" CONTENT="30">

Wird die Login Verwaltung der User gestört, rufe ich die Testseite nicht auf ist alles ok,
ich kann eingeloggt zwischen dem geschlossenen Userbereich hin und her zu meinen Mudelen springen in den öffentlichen Bereich meiner Homepage wechseln wieder zu meinen Modulen nach adimio springen ohne mich wieder einloggen zu müssen.

Rufe ich die Testseite auf und sie macht eine Refresh , muss ich mich jedes Mal neu einloggen um an meine Module zu kommen. Da klappt was nicht.

Habe fly2me meinen Testordner mit entsprechenden Dateien geschickt...

Gruss

der Uwe
fly2me
Former team member
Beiträge: 300
Registriert: 27. Nov 2006, 10:38
Wohnort: Zürich

Beitrag von fly2me »

Klappen, klappe es schon, jedoch scheint dort noch ein Wurm in der Common.php und in der sidebar_online.php zu sein.

In der Common passiert folgendes. Bei jedem Refresh wird ein neuer Eintrag in der adm_sessions gemacht, jedoch ohne eine ses_session_id. Bei jedem refresh kommt ein neuer, leerer Eintag hinzu und die Besucherzahl wächst und wächst und wächst.

In der Sidebar_online.php ist folgender Fehler. Die Sidebar refernziert das Objekt currend_db. Dies kann jedoch auch die Forums_db sein, sofern man ein Forum hat. Dann knappl es mit der Meldung phpforum._user not found.
Antworten