Joomla 4.4.3
php-Version online 8.1.27
php-Version lokal 8.1.10
online noch in nicht-öffentlicher Testversion, Vorgängerversion mit J3 hier: https://graf-nutzfahrzeuge.de/fahrzeuge?view=fahrzeuge
(auf ein beliebiges Fahrzeugbild klicken, in der Einselansicht mit dem Mauszeiger über die kleinen Vorschaubilder fahren. Das ist der gewünschte Effekt)
Hallo,
ich habe ein eigenartiges, weil unterschiedliches Verhalten bei Pfadangaben in der online und in der lokalen Installation.
Beim Verweis auf ein Bilderverzeichnis muss ich in der lokalen Version den Pfad so angeben:
/Daten/Fahrzeuge/Fahrzeugbilder/ - mit einleitenden Schrägstrich
und bei der online Version so:
images/fahrzeugbilder/ - ohne einleitenden Schrägstrich
Da ich die Pfadangabe sowieso irgendwo hinterlegen muss (Tabelle #__gdv4_config), könnte ich damit eigentlich leben, wenn nicht ein Folgefehler auftreten würde. Der tritt auf, wenn ein Javascript ausgeführt wird. Im einen Fall (lokal) findet das Script die Bilder, im anderen (online) nicht. Das heißt, die Vorschaubilder werden immer angezeigt. Beim Überfahren mit dem Mauszeiger verschwindet in der Online-Version aber das Hauptbild und erscheint auch bei mouseout nicht wieder. Das andere Bild wird gar nicht erst in der großen Ansicht angezeigt. Lokal funktioniert alles einwandfrei. Das ausserdem installierte Karoussell für das große Bild funktioniert in beiden Installationen.
Wenn ich in der Online-Version den einführenden Schrägstrich setze, kann ich auf kein Bild mehr zugreifen, wenn ich ihn in der lokalen Version weg lasse genauso.
Setze ich im Javascript den Schrägstrich, funktioniert es in der Online-Version, aber nicht mehr in der lokalen.
Was läuft da schief?
Das ist der Code mit dem Script:
<php $bilderpfad = $this->bildpfad;
.....
foreach ($bilder as $bild) {
$bild_src = $bilderpfad . $bild; ?>
<div class="fahrzeug_vorschaubild col-xl-2 col-lg-2 col-md-2 col-sm-3" >
<a onmouseover="javascript:changeImg('<?php echo $bild_src; ?> ')" onmouseout="javascript:changeImg('<?php echo $bilderpfad . $bilder[0]; ?> ')">
<img src="<?php echo $bild_src; ?>" alt="<?php echo $marke_modell; ?>, Interne Nummer: <?php echo $interne_nummer; ?>">
</a>
</div>
<?php } ?>