Hallo,
verstanden habe ich es immer noch nicht und ausprobiert habe ich nun vier Tage.
Ich verstehe das nicht. Ich habe doch geschrieben, dass ich es mit Funktionen
machen möchte, aber es nicht hinbekomme. Das Beispiel mit der if-Abfrage sollte
lediglich ein Beispiel dafür sein, dass alle Vars und Abfragen funktionieren bzw.
verarbeitet werden.
Noch mal kurz zusammengefasst was mein Problem ist.
PHP-Code:
//Aufruf per switch
switch (strtolower($option)) {
case 'com_content':
contentFooterInfo ( $id );
break;
case 'com_xyz';
xyzFooterInfo ( $id );
break;
//...und noch mehr
default :
contentFooterInfo ( $id=3 );
break;
}
function contentFooterInfo ( $id ) {
global $database;
// Datenbankabfrage beim Aufruf von Content
// Bereitstellung von Bearbeiter und Datum der ?nderung
$query = "SELECT modified FROM content WHERE id=$id ";
$database->setQuery($query);
$modified = $database->loadResult();
$query = "SELECT modified_by FROM content WHERE id=$id ";
$database->setQuery($query);
$modified_by = $database->loadResult();
$query = "SELECT name FROM users WHERE id=$modified_by ";
$database->setQuery($query);
$name = $database->loadResult();
// Wenn Änderungsdatum leer, wird das Erstellungsdatum verwendet
if (empty($modified)) {
$query = "SELECT created FROM content WHERE id=$id ";
$database->setQuery($query);
$modified = $database->loadResult();
$query = "SELECT created_by FROM content WHERE id=$id ";
$database->setQuery($query);
$created_by = $database->loadResult();
$query = "SELECT name FROM users WHERE id=$created_by ";
$database->setQuery($query);
$name = $database->loadResult();
}
//was muss hier passieren? Aber was?
return $modified
// was ist hier mit $name?
}
Die Var $modified und $name sollen hier an zwei
verschiedene Funktionen weitergegeben werden.
PHP-Code:
function reArrange ( $modified ) {
if (empty($modified)) {
$modified='unbekannt';
}
else {
list($date, $time) = explode(' ', $modified);
list($jahr, $monat, $tag) = explode('-', $date);
$modified = $tag . '.' . $monat . '.' . $jahr;
}
return $modified;
}
bzw.
PHP-Code:
function nameOutput ( $name ) {
if(empty($name)) {
$name = 'unbekannt';
}
return $name;
}
Auf der Seite wird dann per
PHP-Code:
<div class="left">
| Letzte Änderung [b]<?php echo reArrange ( $modified ); ?>[/b]
| <?php echo nameOutput ( $name ); ?>
</div>
Nun kommt die Var $modified bzw. $name aber nicht bei den entsprechenden
Funktionen an. Zudem weiß ich nicht genau, was ich tun muss, wenn ich zwei Variablen in aus einer Funktion in zwei verschiedene Funktionen übergeben möchte.
Zur Not kann man die Funktion nameOutput und reArrange auch zusammenfassen, aber dazu müsste ich erst einmal wissen, wie ich die beiden Vars aus der Funktion contentFooterInfo in die Funktion übergebe.
Ich habe nun
return $modified;
reArrange ( $modified );
oder ähnliches in allen Kombinationen ausprobiert. Geht so nicht.
Gruß
Tine