midivirus
Goto Top

WebsiteBaker - postgres - mysql - eigene Funktionen - bei Aufruf dann Absturz

Sehr geehrte Gemeinde,

aufgrund eines Projektes, welches bei mir im Kopf schwebt, möchte ich ein Portal erstellen, wo gewisse Auswertungen von DBs in WebsiteBaker dargestellt werden.

Die Hauptdatenbank läuft auf Postgres und parallel dazu jetzt noch mysql.

Wenn ich WebsiteBaker ganz normal einrichte, als Abschnitt "code" wähle und als dummes Beispiel diesen Code verwende:

echo "welt";   

funktioniert dies natürlich auch alles wunderbar.

Jetzt sind die ganzen einzelnen Funktionen in einer eigenen PHP-Datei, diese wurde in der Datei framework/class.wb.php eingebunden.
Soweit auch keine Fehler erkennbar.

Möchte ich jetzt aber auf diese Funktion zugreifen, stürzt wohl WB ab, denn die Ausgabe bleibt aus/leer!

Entnehme ich die Funktion und packe diese direkt in die WB-Klasse, der Aufruf erfolgt dann so:

$wb->getInfos();

funktioniert dies auch erstmal.

Da die Informationen aber in der Postgres-DB stehen und ich den Aufruf normalerweise so gestalte:

$dbh = pg_connect("host=127.0.0.1 dbname=dbname user=dbuser password=dbpass port=".$port);  

und diese Verbindung dann über global $dbh; in die einzelnen Funktionen hole, klappte dies damals auch alles wunderbar.

Jetzt die eigentliche Frage:
Kann man beide DB-Typen überhaupt mischen und wenn ja, was müsste ich da grundsätzlich beachten?

Dazu möchte ich auch noch erwähnen, dass ich zwar nicht DER PHP-Mensch bin, aber schon vieles verstehe, muss ich schauen, es überhaupt realisierbar sein wird.

Früher / Jetzt ist das Konstrukt so zuverstehen:

index.php -> enthält die Definitionen, wann welche Funktion aufgerufen wird
include "framework.functions.php" -> die Funktionen, welche ständig gebraucht werden
include "framework.auswertung.php" -> Funktionen die die Auswertungen zusammenbasteln

Im Voraus vielen lieben Dank.

Euer Midivirus

@wiki: http://en.wikipedia.org/wiki/List_of_content_management_systems#PHP

Lösung:
Hab es selbst programmiert und ein eigenständiges Berechtigungskonzept erstellt.


Die Umsetzung fand mit Sessions statt und das Template der Firmenwebseite wurde CMS-tauglich gemacht und so verwendet.

Das Umschreiben auf postgres der ganzen SQL-Statements hab ich mir jetzt geschenkt und kam nicht in Frage, denn das einzige, was ich von dem CMS gebraucht hätte,
wäre die LogIn Klasse ... welche ich quasi 'extrahiert' habe.

Grüße an Leser dieses Beitrags

Content-ID: 153467

Url: https://administrator.de/contentid/153467

Ausgedruckt am: 22.11.2024 um 04:11 Uhr

Florian.Sauber
Florian.Sauber 25.10.2010 um 13:55:56 Uhr
Goto Top
Hallo Midivirus,

ich hab ja schon in nem anderen Beitrag angedeutet, dass ich mit Websitebaker nicht vertraut bin. Hatte zwar mal vor Jahren, als es einer Zeitschrift beilag ein wenig mit rumgespielt, aber daran keinerlei Erinnerung mehr.

Meine Suche im Web, bezgl. des grundlegenden Aufbaus hat mich auch nicht weitergebracht und ich habe gerade zu wenig Zeit, als dass ich es mir zu Testzwecken schnell installieren könnte.

Daher kann ich Dir, was die Einbindung Deiner PHP-Scripts anbelangt leider nicht weiterhelfen.

Wenn ich Dich richtig verstanden habe, geht es Dir ja um ein Anzeige von DB-Auswertungen.
An anderer Stelle hat ja dog bereits erwähnt, dass es problematisch ist, verschiedene DB-Typen mit einem gemeinsamen Abfragecode zu bearbeiten. Daher hier einfach für jeden DB-Typ eigene Funktionen verwenden.

Falls es Dir nur um die blose Darstellung im CMS gehen sollte und nicht um Kombinationen aus dem CMS-Funktionen und Deiner Abfrage, würde ich das erst mal getrennt halten. Also eine PHP-Seite, die Dir die Abfragen gestaltet und diese dann z.B. als iFrame ins CMS einbinden.

LG Florian
Midivirus
Midivirus 25.10.2010 um 14:08:28 Uhr
Goto Top
Falls es Dir nur um die blose Darstellung im CMS gehen sollte und nicht um Kombinationen aus dem CMS-Funktionen und Deiner Abfrage, würde ich das erst mal getrennt halten. Also eine PHP-Seite, die Dir die Abfragen gestaltet und diese dann z.B. als iFrame ins CMS einbinden.
(dort dann das notwendige als Parameter mit übergeben)

So hab ich das zur Notlösung auch zu Testzwecken mal kurz umgesetzt.

Sollst dir ja dir ja auch keine Testumgebung aufbauen.
Aber ich glaube, dass alle DB Aktionen in der /framework/class.database.php enthalten sind.
Zusätzlich müsste ich jetzt alle querys ggf. anpassen.

Ein CMS soll nur verwendet werden, weil dort schon eine schöne Benutzerverwaltung enthalten ist und man sehr einfach durch die Menüseiten eine Struktur hat und mittels der Menü-Module dies auch im Template nur anzeigen lassen muss (...)
Theoretisch könnte ich diese dort jetzt auch extrahieren und in das vorhandene packen. (...)

Was nutze ich von dem CMS:
Kategorisierung der einzelnen Abfragen, benutzerabhängige Darstellung der Ergebnisse - Zugänge zu den Abfragen.
(Wird nicht im Privatnetz betrieben, sondern ist mehr oder weniger öffentlich zugänglich!)

Dem Benutzer wird in der DB zusätzliche Feld beigefügt und in den Abfragen berücksichtigt.

[schaue gerade, wie gut T3 mit Postgres zusammenarbeitet und ich das vorhandene dort implementieren kann; Testumgebung mit Virtual PC und XAMPP als Grundlage]

Grüzi
Florian.Sauber
Florian.Sauber 25.10.2010 um 14:37:32 Uhr
Goto Top
Ah ok,

dann fällt die Alternative mit iFrames natürlich aus.

PostgreSQL- Unterstüzung bei TYPO3 heisst aber nichts anderes, dass die für das CMS notwendige Daten in so einem DBMS abgelegt werden können. Für die Abfrage externer (bereits bestehender) DB ist das unerheblich.

Da kommst Du mit TYPO3 nicht um Extensions herum. Vielleicht hilft Dir in diesem zusammenhang auch die schon bestehende Extension DB Integration weiter.

LG Florian