====== Projekte aus der Forschungsdatenbank mittels PHP einbinden (Besonderheit, da Parameterauswertung)======
Die Besonderheit bei der Einbindung von Projekten ist, dass der URL-Parameter ''projectId'' ausgewertet werden muss.
Dies geschieht im untenstehenden Beispiel durch Weitergabe an den Parameter ''Lfdnr'' an die Forschungsdatenbank.
if (isset($_REQUEST['projectId'])) {
$fdb->setFDBParameter('Lfdnr',$_REQUEST['projectId']);
}
Durch Übergabe dieses Parameters wird die Forschungsdatenbank angewiesen nur dieses eine Projekt auszugeben.
Sofern nur ein Projekt im XML vorhanden ist, zeigt das XSLT-Stylesheet dann die ausführliche Darstellung des Projektes an.
Zusätzlich wird am Ende noch ein Link ausgegeben, der es ermöglicht zur Liste aller Projekte zurückzuspringen.
setFDBParameter('Kostenstelle','110113');
$fdb->setFDBParameter('Dokumentart','Projekt');
# So koennen die aktuell gesetzten Parameter ausgegeben werden
# var_dump($fdb->getFDBParameters());
# Wenn Parameter projectId uebergeben, dann nur dieses eine Projekt ausgeben
if (isset($_REQUEST['projectId'])) {
$fdb->setFDBParameter('Lfdnr',$_REQUEST['projectId']);
}
# Keine nach oben links anzeigen
$fdb->setXsltParameter('enable_totop_backlink','false');
# Sprache anpassen, abhaengig von dem Parameter lang in der session
# Array zur Uebersetzung von $_SESSION['lang'] (DE,EN) in die Kuerzel, die das XSL erwartet (D,E)
$langArray = array(
'EN' => 'E',
'DE' => 'D'
);
if (isset($_SESSION['lang']) && in_array($_SESSION['lang'], array_keys($langArray))) {
# Sprache setzen
$fdb->setXsltParameter("language", $langArray[$_SESSION['lang']]);
} else {
# fuer den Fall, dass die Sprache nicht bekannt ist, Standard-Sprache (Deutsch) waehlen
$fdb->setXsltParameter("language", "D");
}
# 24h * 30 Tage
$cacheLifetime = 24 * 60 * 60 * 30;
# Cache nur neu schreiben, wenn er ungueltig ist
$fdb->writeCacheFileIfCacheExpired($cacheLifetime);
# Cache in die Ausgabe einbinden
$fdb->includeCacheInOutput();
?>
Back to the listZurück zur Projekt-Liste
{{tag>php techniker tf-infoportal}}