Kilka zdjęć w jednym miejscu.

0

Witam. Mam coś takiego.

TojestPlikZjakąśtamGrafiką_(1).jpg
TojestPlikZjakąśtamGrafiką_(2).jpg
TojestPlikZjakąśtamGrafiką_(3).jpg
TojestPlikZjakąśtamGrafiką_(4).jpg
TojestPlikZjakąśtamGrafiką_(5).jpg

I teraz tak. To jest 5 różnych plików graficznych. Zaznazonych tylko numerem w nawiasie od 1 do... tyle ile mam zdjęć. Wszystkie zdjęcia są w jednym katalogu, ale jest też cała kupia innych zdjęć. Chciałbym, żeby mój programik badał ile jest danych zdjęć o takiej samej nazwie... i randowo losował jedno zdjęcie. Przy każdym załadowaniu strony niech wyświetla się jedno z tych co są. Chodzi mi o to, żeby trochę urozmaicić bloga. Żeby pod jednym i tym samym artykułem zawsze pojawiało się inne zdjęcie. Np... jedno z 2, 3, 4, 5...

Bardzo dziękuję wam za pomoc przy obmyśleniu tego,
jaki kodzik mógłby zdziałać coś takiego.
Temat otwarty.

Pozdrawiam serdecznie
Jakub

0

jedno zapytanie do googla i:

$imagesDir = 'images/';
$images = glob($imagesDir . '*.jpg', GLOB_BRACE);
$randomImage = $images[array_rand($images)];

Przy założeniu, że wszystkie interesujące Cie obrazy są w jednym folderze images

0
$imagesDir = 'images/';
$images = glob($imagesDir . 'TojestPlikZjakąśtamGrafiką_(*).jpg', GLOB_BRACE);
$randomImage = $images[array_rand($images)];

No to testujemy. :-)
Może zadziała!

0

To mam dla Was smakowitą zagadkę:

/*
                    $imagesDir = 'images/';
                    $images = glob($imagesDir . 'Boeing(*).*', GLOB_BRACE);
                    $randomImage = $images[array_rand($images)];

                    JAK POZBYĆ SIĘ ROZSZERZENIA Z PLIKU?
                    
                    */
                    
                   $Image = "<div><a href=/images/".$row[Image]." title='".$row[Title]."' target=\'_blank\'>
                   <img src='/images/".$row[Image]."' alt='' width='400'></a><div><br><br>";

I teraz tak. Edytując komentarz wrzucam plik:
JakiśPlik.jpg

Już ma zacząć śmigać!

A jak przyjdzie mi ochota dodać kolejny plik, to wrzucę plik kolejny i wysilę się i zmienie mu nazwę na:

JakiśPlik(1).jpg

a potem dodam jeszcze dwa:

JakiśPlik(2).png i
JakiśPlik(3).bmp

Kurde ale okazało się, że mają inne rozszerzenia.
Spoko, to wszystko mogę rozwiązać gwiazdką.

Nawet mogę się wysilić i ten pierwszy plik nazwać JakiśPlik(1).jpg
Albo zrobić robocika który zrobi to za mnie.

Problem jest tylko jeden.
Jak to wszysto połączyć w kupę?

Dziękuję za pomoc.
Miłego dnia życzę Pańśtwu.

Jakub

0
<?php


$filename = 'Boeing.jpg';
$without_ext = pathinfo($filename, PATHINFO_FILENAME);

    $imagesDir = 'images/';
    $images = glob($imagesDir . "$without_ext*.*", GLOB_BRACE);
    $randomImage = $images[array_rand($images)];


echo $randomImage;


?>

Przekazuję plik.
Wywaliłem ten numer z nawiasu.
Obdzieram nazwę pliku z rozszerzenia.
I widać, że muszę jeszcze obedrzeć plik z jednego znaku.
Tj. cyferki.
Zakładając, że max będzie 10 obrazków od 0 do 9.

I teraz tak.
Jaka funkcja mi obedrze jeden ostatni znak z ciągu znaków
w moim przypadku będącego nazwą pliku? ;-)

Dziękuję za pomoc.
Jakub

0
<?php


$filename = 'Boeing5.jpg';
$without_ext = pathinfo($filename, PATHINFO_FILENAME);

//Remove the last character using substr
$without_ext_and_number = substr($without_ext, 0, -1);

    $imagesDir = 'images/';
    $images = glob($imagesDir . "$without_ext_and_number*.*", GLOB_BRACE);
    $randomImage = $images[array_rand($images)];


echo $randomImage;


?>

1 użytkowników online, w tym zalogowanych: 0, gości: 1