Was das bedeutet, kann man nur beurteilen, wenn man weiß, in welchem Zusammenhang bzw. an welcher Stelle in deinem Code das steht.
Beiträge von Sempervivum
-
-
var_dump() kann auch ein zweidimensionales Array ausgeben.
Was in_array betrifft, so hängt die Auswertung davon ab, was Du haben willst. Du hattest ja den Wunsch, dass die $carray der Module für jede Kategorie getrennt gespeichert werden.
-
PS: Ich sehe gerade, dass da ein Fehler ist:
$carray[$categoryname] = $arrayst; muss lauten: $carray[$categoryname] = [$arrayst];
soll ja ein zweidimensionales Array werden.
-
Jetzt musst Du natürlich auch die Auswertung anpassen, in_array wird bei einem zweidimensionalen nicht funktionieren. Und überprüfen, ob das Array richtig aufgebaut wird, z. B. durch ein var_dump().
-
Inzwischen glaube ich, dass ich deine Aussage aus Posting #1 jetzt besser verstehe:
ZitatEs soll jedoch praktisch für jede Kategorie ein individueller Array erstellt werden. Wie ist das möglich? Danke schonmal!
Lösung: Ein zweidimensionales Array, wie früher schon angeregt:
Coderequire 'inclusions/action/preview/checkcategory.php'; if (issset($carray[$categoryname])) $carray[$categoryname][]= $arrayst; else $carray[$categoryname] = [$arrayst];Schau mal, ob dir das weiter hilft.
-
Siehe hier:
https://wiki.selfhtml.org/wiki/JavaScript/Objekte/Array/map
Ich hätte erwähnen sollen, dass Du die Überarbeitung am besten vor der Übergabe an die Bibliothek machst, dann ist es übersichtlicher. Würde dann etwa so aussehen:
Dann das neue Array test2 übergeben:
-
Nein, so einfach ist es leider nicht. Du musst schon Element-für-Element das Array abarbeiten und den jeweiligen Eintrag mi 200 mulitplizieren. Recht elegant geht das mit der Funktion map().
-
Verstehe es immer noch nicht richtig. Wo werden die Werte true/false denn ausgegeben? Und ist $arrayst nun ein Array oder ein einfaches boolean?
-
Zum Teil verstehe ich es besser, zum Teil bin ich noch am Schwimmen: $arrayst ist, wie der Name sagt, ein Array? Und in dieses Array werden die Werte der einzelnen Module eingetragen? Und dein Problem ist, dass die alten Werte darin stehen bleiben? Dann versuche dies:
Wenn Du dem Array $carray ein Array $arrayst hinzu fügst, wird das Ganze zweidimensional.
-
Mal sehen, ob ich das richtig verstehe: Zu jeder Kategorie kann es mehrere Module geben. Ist mindestens ein Modul einer Kategorie online, gilt die ganze Kategorie als online. Und jetzt willst Du, wie in dem früheren Thread, ermitteln, ob alle Kategorien online sind.
Wenn das zutrifft, sollte es zum Ziel führen, wenn Du das Array zweidimensional anlegst, 1. Dimension die Kategorien, 2. Dimension die Module.
Bis hierher bin ich von deiner verbalen Beschreibung ausgegangen, aber wenn ich in deinen Code sehe, finde ich keine Module? Ist das so aufgebaut, dass es mehrere Einträge mit dem selben Kategorienamen gibt und dass diese dann die Module sind? *gübel*
-
-
Das erfordert nur ein paar kleine Änderungen:
Im HTML die IDs durch Klassen ersetzen:
Code<img class="myImg" src="../Bilder/2.jpg" alt="Snow" style="width:100%;max-width:300px"> <img class="myImg" src="../Bilder/3.jpg" alt="Snow" style="width:100%;max-width:300px"> <img class="myImg" src="../Bilder/4.jpg" alt="Snow" style="width:100%;max-width:300px"> <img class="myImg" src="../Bilder/6.jpg" alt="Snow" style="width:100%;max-width:300px">Und im Javascript eine Schleife über die Bilder:
Code
Alles anzeigen<script> // Get the modal var modal = document.getElementById("myModal"); // Get the image and insert it inside the modal - use its "alt" text as a caption var modalImg = document.getElementById("img01"); var captionText = document.getElementById("caption"); // Get a node list of all images var images = document.querySelectorAll(".myImg"); // Loop over these images for (var i = 0; i < images.length; i++) { // Provide current image var img = images[i]; // Add an event listener for "click" img.onclick = function () { modal.style.display = "block"; modalImg.src = this.src; captionText.innerHTML = this.alt; } } // Get the <span> element that closes the modal var span = document.getElementsByClassName("close")[0]; // When the user clicks on <span> (x), close the modal span.onclick = function () { modal.style.display = "none"; } </script> -
Was ist denn der Sinn der ganzen Sache, bzw. warum schreibst das Tag nicht einfach an der richtigen Stelle in den HTML-Text? Wenn man das weiß, kann man die Frage u. U. gezielter beantworten.
-
Ich verstehe es so, dass der TO das Skript für mehrere Bilder verwenden will, was wegen der Verwendung einer ID so, wie es ist, nicht möglich ist (var img = document.getElementById("myImg");).
-
Heißt das u. U., dass nur die Domain von domainfactory kommt und der Webspace ganz woanders gehostet wird. Dann könnte eine Weiterleitung o. ä. dahinter stecken.
-
Stehe ratlos davor

Ich würde mich an den Support wenden.
-
Hast Du die CSS-Datei wirklich hoch geladen? Am besten postest Du mal die Serveransicht von deinem FTP-Client.
-
*smile* trickreich, aber ich würde es leicht lesbar vorziehen:
-
Zitat
Ich versuche mal gerade mit nativen Javscript dran zukommen
Na dann viel Vergnügen, hier wird beschrieben, wie es geht:
https://stackoverflow.com/questions/1176…tainer/27521511
Oder, je nachdem, wie das Drumherum aussieht, den Elementen den Index als Data-Attribut geben.
Aber dies ist ein klassisches Beispiel für die Vorteile von jQuery: Ein Funktionsaufruf während es mit Vanilla-JS doch ziemlich kompliziert wird.
-