Automatisch immer die neueste Bild-Datei aus bestimmtem Ordner anzeigen lassen.

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

  • Automatisch immer die neueste Bild-Datei aus bestimmtem Ordner anzeigen lassen.

    Hallo zusammen,


    auf einer Webseite soll wöchentlich ein anderes Bild angezeigt werden. Angezeigt werden soll immer das neuste Bild, das sich in diesem Ordner befindet.

    Ist folgendes möglich?
    Man erstellt einen bestimmten Ordner auf dem Server. Dort wird jede Woche ein neues Bild abgelegt (Dateiname sollte egal sein). Zusätzlich nutzt man auf der Webseite ein PHP-Script, das immer das neuste Bild aus dem Ordner ausgibt, also anzeigt.

    Wie ist sowas machbar? Wie müßte der Code dafür lauten?
    Oder habe ich vielleicht irgendwas nicht bedacht?


    Vielen Dank für eure Hilfe
    DieMilchMachts

  • #2
    hi!

    1.speichere einfach die bilder in ne datenbank mit datum und uhrzeit (Im Format "Ymd") und dem Namen des bildes. also Time | Name.

    2.Lies einfach die Datenbank aus und via SQL (SELECT * From Bilder ORDER BY TIME DESC )

    so wird das neuste bild genommen.

    lg tom

    guck dir mal gallerie scripte an, so dass du PHP / SQL verstehst

    Kommentar


    • #3
      Hallo AciD-CoRe,


      danke für Deine schnelle Antwort. Ja, das mit der Datenbank wäre natürlich eine Möglichkeit, aber das mit dem Ordner ohne Datenbank wäre mir ehrlich gesagt lieber.

      Da muß es doch sicher auch eine Möglichkeit geben, oder? Die Bilder, die hochgeladen werden, haben doch auch von sich aus unterschiedlich neue Erstellungsdaten, nach denen sich die Ausgabe richten könnte, oder?


      Danke und Gruß
      DieMilchMachts

      Kommentar


      • #4
        hmm naja das mit erstellungsdatum, auf das verlass dich mal nich so.
        machs einfach so, beim upload nimm einfach nummern, also
        Bild1
        bild2
        bild3

        und bild + die höchste nummer soll dann erscheinen, lässt sich nich schwer
        realisieren.

        lg tom

        Kommentar


        • #5
          Hallo Tom,

          Du meinst, beim Hochladen sollen die Bilder umbenannt werden - komplett mit Nummer? Oder meinst Du, es soll nur eine Nummer an den vorhandenen Dateinamen angehangen werden?

          Gruß
          DieMilchMachts

          Kommentar


          • #6
            einfach statt zb
            ich.jpg - > bild1.jpg

            is die einfachste möglichkeit

            beim uploaden gucke einfach wieviel dateien sich schon im ordner befinden und mach da einfach + 1.

            beim auslesen des neusten bildest liest du auch die anzahl der dateien aus und nimmst halt die größte.

            lg tom

            Kommentar


            • #7
              Hi Tom,


              diese Lösung klingt ganz gut.

              Wie stelle ich das nun an? Mit PHP Dateien in einen Ordner zu laden sollte ich irgendwie hinbekommen, aber die korrekt umzubenennen... eher nicht.

              Und wie lese ich dann korrekt das neuste aus und lasse es anzeigen?


              Vielen Dank und Gruß
              DieMilchMachts

              Kommentar


              • #8
                Also:


                So liest du die Anzahl der Bilder eines Verzeichnisses aus:

                PHP-Code:
                <?php
                $dir 
                "ORDNER";
                $handle = @opendir($dir);
                while (
                $file = @readdir ($handle))
                {
                if(
                strstr($file".jpg"))
                {
                $daten[] = $file;
                }}
                @
                closedir($handle);
                 
                $anzahl count($daten);
                echo 
                $anzahl;


                //Zum Upload: (Formular muss Vorhanden sein und hierhin hinweisen
                //Inputtype File muss bei dem jetzt userfile heissen

                if ($menu == 'Upload') {
                $anzahl $anzahl +;
                $uploaddir '../uploads/';
                $uploadfile $uploaddir basename($_FILES['userfile']['name']);

                if (
                move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
                   
                rename("$uploadfile""../uploads/Bild$anzahl.jpg");}
                }


                // Zum Ansehen
                if ($menu == 'neuesbild') {
                echo 
                "<img src='uploads/bild$anzahl.jpg'  />";
                }
                }


                 
                ?>
                lg tom

                Kommentar


                • #9
                  PHP-Code:
                  $get_last_mod 0;

                  $dir "images";
                  $handle opendir("./".$dir);
                  while(
                  false !== ($file readdir($handle))){
                   if(
                  $file!="." && $file!=".."){
                    if(
                  getlastmod($dir."/".$file)>$get_last_mod){
                     
                  $get_last_mod getlastmod($dir."/".$file);
                     
                  $latest_image $dir."/".$file;
                    }
                   }
                  }
                  closedir($handle); 
                  Versuch mal sowas dann ist das umbenennen nicht nötig. Wenn im Odner noch andere Dateien vorhanden sind erweiterst du einfach die if-Schleife z.B. mit if($file!="." && $file!=".." && (strtolower(substr($fle,-3))=="jpg" || strtolower(substr($fle,-3))=="gif" || ...))

                  Kommentar

                  Lädt...
                  X