Beiträge von Sempervivum

    Das kannst Du relativ leicht erreichen, indem Du nach dem Erzeugen der neuen Bilderreihe einen Klick auf das erste Bild simulierst durch Aufruf der Funktion click():

    BTW: Als ich den Code in meinen Editor übertragen habe, hat dieser beanstandet, dass am Ende des HTML zwei schließende </div> fehlen.

    Mal sehen, ob ich das richtig verstehe: Drückt man oben einen kreisförmigen Kreis, wird ein Satz von Bildern in die Zeile in der Mitte geladen.

    Im Moment erkennt man das nicht, weil bei allen Knöpfen die selben Bilder geladen werden. Dass sich etwas ändert, erkennt man aber daran, dass sich die Anzahl ändert.

    Drückt man auf ein Bild in der mittleren Zeile, soll es in dem unteren Fenster mit der Beschreibung angezeigt werden.

    Funktioniert soweit alles.

    Das Problem ist jetzt: Du möchtest, dass jedes Mal, wenn man einen runden Knopf oben drückt, wieder das erste Bild in dem Fenster mit der Beschreibung angezeigt wird?

    Ja, bei mir sieht das auch so aus, die Rundung ist mehr elliptisch. Man kann sie rund bekommen mit clip-path:

    clip-path: circle(200% at 50% -100%);

    aber anscheinend ist die y-Position des Kreises der Prozentwert der Breite und nicht der Höhe, so dass man Probleme bekommt, das Ganze responsiv zu bekommen. Kein Problem ist es, wenn der Container entweder quadratisch ist oder eine feste Höhe hat.

    Bei mir sind beide Seiten gleich, allerdings sieht die Rundung ganz anders aus als auf deinem Screenshot. Hast Du Scollbars? Wenn ja, ist das möglicher Weise eine Täuschung und kann behoben werden, indem Du body ein margin: 0; gibst.

    Das ist dann leider nicht mehr so einfach. Ich habe da mal eine Lösung gebaut mit allen Bildern in einem Container. Die Umschaltung zwischen einer, zwei und drei Spalten geschieht dabei, indem man die Breite der Bilder setzt auf 100%, 50% und 33.33%. Großer Nachteil: Man muss die Höhe des Containers anpassen, damit die Bilder annähernd gleich auf die Spalten verteilt sind. Dadurch ist das Layout schwer zu erweitern und es wäre am besten, wenn man die optimale Höhe mit Javascript berechnen würde.

    Du kannst mit Flexlayout drei Spalten anlegen und die Bilder dort hinein tun:

    Zitat

    worauf bezieht sich das Pfad '/tmp/your_file.csv' bei LOAD DATA INFILE

    Ist das das Verzeichnis auf meinem Computer oder ist das das Verzeichnis auf dem Apache-Server?

    Das ist die Datei auf dem Server. Aber bei dem Verfahren, das ich selber beschrieben habe, ist das gar nicht relevant, weil Du dann die Datei manuell mit dem Filemanager auswählst. Wie ich oben schrieb:

    Zitat

    kannst die Import-Funktion von phpmyadmin verwenden, dann kannst Du sie auf deinem lokalen Dateisystem auswählen und sie wird automatisch hochgeladen und eingelesen.

    Zitat

    Außerdem können die Daten in meiner Tabelle nicht durch Kommas getrennt sein.

    Du kannst jedes beliebige Zeichen als Trennzeichen verwenden, auch ; |` etc., Du musst dieses nur beim Export angeben. Wenn dieses Zeichen in deinem Text vorkommen sollte, kannst Du die Einträge in Hochkommas einschließen und das Trennzeichen ggf. escapen.

    Wenn Du damit nicht zum Ziel kommst, dann poste mal ein paar Beispieleinträge, die das Problem demonstrieren.

    Ich habe es mal mit Testtabellen und -dateien durch gespielt und es hat problemlos funktioniert. Du brauchst die Datei mit den Daten nicht selber hochzuladen, sondern kannst die Import-Funktion von phpmyadmin verwenden, dann kannst Du sie auf deinem lokalen Dateisystem auswählen und sie wird automatisch hochgeladen und eingelesen.

    Du schreibst zwar: "Ich will keine neue Tabelle in phpmyadmin hochladen" aber wenn man den Angaben bei Stackoverflow folgt, musst Du das tun, und zwar zunächst die Daten in eine temporäre Tabelle laden, dann daraus die Daten in die Zieltabelle einfügen. Die temp. Tabelle kannst Du dann wieder löschen.

    Die einzelnen Schritte sehen so aus:

    1. Spalte in der Zieltabelle auswählen, die sich als ID eignet, d. h. über die man einen Datensatz eindeutig identifizieren kann.

    2. Temp. Tabelle erzeugen mit zwei Spalten: ID und Wert, der in die Zieltabelle eingefügt werden soll.

    3. Mit phpmyadmin die neue Spalte in der Zieltabelle hinzu fügen.

    4. Um sie leicht editieren und in phpmyadmin importieren zu können, die Datei mit den Daten am besten als CSV-Datei anlegen. Bei meinem Test sahen die Daten so aus:

    Code
    1,data1
    2,data2
    3,data3
    4,data4
    5,data5

    5. Die temp. Tabelle in phpmyadmin auswählen und in der Werkzeugleiste oben auf "Importieren" klicken.

    Format CSV auswählen, in "Spalten getrennt mit" das Komma stehen lassen, "Spalten eingeschlossen mit:" und "Spalten escaped mit" leer machen.

    Dies ist der einfachste Fall. Wenn Deine Daten auch Kommas enthalten können, musst Du dies anpassen.

    6. Import mit "OK" starten.

    7. Wenn der Import erfolgreich war, die Daten mit SQL in die Zieltabelle eintragen:

    SQL
    UPDATE ZIELTABELLE D SET D.NEWCOL=(SELECT VALUE FROM TEMP WHERE ID=D.ID)

    Wenn Du überprüft hast, dass die Daten richtig übernommen wurden, kannst Du die temp. Tabelle wieder löschen.

    Das liegt daran, dass für main die opacity auf 0.8 gestellt ist:

    Bei mit funktioniert der Zugriff auch in der Funktion createKnights:

    Zitat

    kann man die Id nur so holen: getElementById('neraxis') oder kann ich auch so: getElementById(knightlist[i])?

    Selbstverständlich sollte das zweite auch funktionieren.