images-Verzeichnis auslesen, sortieren u. anzeigen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Nein die Bilder werden jeweils einzeln aus dem Ordner ausgelesen so das es unterschiedliche Bilder sind.
    Und die Background-position ist relative zum Div und damit auch unterschiedlich.

    Kommentar


    • #17
      Zitat von boeserfrosch Beitrag anzeigen
      Nein die Bilder werden jeweils einzeln aus dem Ordner ausgelesen so das es unterschiedliche Bilder sind.
      Achso, das hatte ich zwischenzeitlich übersehen.

      Zitat von boeserfrosch Beitrag anzeigen
      Und die Background-position ist relative zum Div und damit auch unterschiedlich.
      Trotzdem zeigt es immer denselben Ausschnitt an, was in diesem Fall ja nicht schlimm ist. Aber so etwas wie background-attachment: relative gibt es trotzdem nicht.

      Kurzum: Die Sprite-Technik ist hier ja gar nicht anwendbar, das war mein Denkfehler.

      Du machst das schon, boeserfrosch und dein Engagement hier ist bisher beachtlich.

      Gruß,

      Amica
      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
      Super, danke!
      [/COLOR]

      Kommentar


      • #18
        Stimmt ja das background-attachment kennt ja kein relative.

        Könnte man somit auch komplett weglassen oder das relative mit scroll ersetzen.

        Kommentar


        • #19
          Tausend Dank boeserfrosch, funktioniert jetzt einwandfrei!!!

          Das background-attachment habe ich background-attachment: scroll; deklariert, ich denke dass das die sinnigste Wahl ist? Gleiches Ergebnis würde ich erzielen, wie Du schon schreibst, wenn ich's einfach weglasse.

          Zitat von AmicaNoctis
          Kurzum: Die Sprite-Technik ist hier ja gar nicht anwendbar, das war mein Denkfehler.
          Beim auslesen von Ordnern wird es nur machbar sein, wenn ins Template und ins CSS geschrieben wird. Bei ca. 50 Grafiken um 2-3kb wird der Erfolg nicht so riesig, oder?

          Ich habe nur aus einem Grund auf background-image gesetzt, ich möchte das image vertikal u. horizontal zentrieren. background-image ist per CSS die einzige Möglichkeit vertikal zu zentrieren. Falls jemand eine bessere Lösung kennt, um das image als <img src einzubauen, wäre ich für jeden Tipp dankbar Ich habs schon per <img style="vertical-align:middle;", background-position: center;, display: block; margin: 0 auto;, display: table-cell; vertical-align: middle; - nichts hat wirklich funktioniert.

          Jetzt muss ich das tolle script noch in meine Template-Engine (code u. content getrennt) einbauen, dann kann ich's schon nutzen. Nochmals, tausend Dank!!!

          Kommentar


          • #20
            Jetzt muss ich das tolle script noch in meine Template-Engine (code u. content getrennt) einbauen, dann kann ich's schon nutzen.
            Ich kriege das leider nicht hin.
            Ich benutze die Template-Engine HSTemplate von Anton Shevchuk.

            Ich habe das script als sortieren.php in den Ordner /inc kopiert:
            PHP-Code:
            <?php
            //Verzeichnis der Bilder
            $verzeichnis './images/refs/';
            $verz scandir($verzeichnis);


            // A - Z
            sort($verz);
            // Z - A
            // rsort($verz);

            $n count($verz);
            $a round($n/3);
            $i 0;
            $x 1;



             echo 
            "<div class=\"refs\">\n"

            foreach(
            $verz as $file)
            {

            $info = @getimagesize($verzeichnis.$file);
            if((
            $info[2]==(1||2||3)) && $file != "." && $file != ".." && $file != "" 
            && !is_dir($verzeichnis.$file) && is_file($verzeichnis.$file))
                {
                  
                
            if(
            $i == 3)
            {

                
            $i 0;
                echo 
            "<div class=\"spacer\"></div>
                    </div>
                    <div class=\"refs\">
                \n"
            ;
            }



            if(
            $x == 1)
            {
                
            $zusatz 2;
                
            $x 2;
            echo 
            "
            <div class=\"refs_links\" style=\"background-image: url("
            .$verzeichnis.$file.");\"></div>\n";
            }
            elseif(
            $x == 2)
            {
                
            $zusatz 1;
                
            $x 3;
                echo 
            "
                <div class=\"refs_mitte\" style=\"background-image: url("
            .$verzeichnis.$file.");\"></div>\n";
            }
            else
            {
                
            $zusatz 0;
                
            $x 1;
            echo 
            "<div class=\"refs_rechts\" style=\"background-image: url(".$verzeichnis.$file.");\"></div>\n";
                }
                
            $i++;
                }

            }
            $ueberpruefung 0;
            while(
            $ueberpruefung $zusatz)
            {
            $ueberpruefung++;
            if(
            $ueberpruefung == 1)
            {
            echo 
            "<div class=\"refs_mitte\" style=\"background-image: url(none);\"></div>";
            }
            else
            {
                echo 
            "<div class=\"refs_rechts\" style=\"background-image: url(none);\"></div>";
            }

            }
            echo 
            "</div>";
            ?>
            Im Template (.html) habe ich es so eingebunden:

            PHP-Code:
            <h1><?=$Sub_Headln?></h1>
            <?=$Content_1?>
            <p><?=$Content_2?></p>
            Der Content (.php) sieht wie folgt aus:

            PHP-Code:
            <?php
            $header_src 
            "";
            $site = array(
            "Sub_Headln" => "Images",
            "Content_1"=>"inc/sortieren.php",
            "Content_2" => "
            Content 2
            "
            );
            ?>

            Kommentar


            • #21
              Gibt es einen Fehler oder wird einfach nix ausgegeben?

              Kommentar


              • #22
                Gibt es einen Fehler oder wird einfach nix ausgegeben?
                Keine Fehlermeldung, es wird an Content_1 einfach nichts ausgegeben.

                Das ist die Ausgabe:

                <h1>Images</h1>
                inc/sortieren.php<p>
                Content 2
                </p></div>

                Kann sein, dass die Template-Engine das includieren anders braucht? Content_1 wird als Text ausgegeben, nicht interpretiert.
                Zuletzt geändert von Kirzz; 27.04.2010, 06:45.

                Kommentar


                • #23
                  Hmm...

                  Dann kann ich dir dabei nicht weiterhelfen.
                  Ich kenn diese Template-Engine nicht.
                  Vielleicht findet sich hier ja einer der sich damit auskennt.

                  Viel Glück

                  Kommentar

                  Lädt...
                  X