Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Losowy obrazek,ostatnio ododany brazek
Forum PHP.pl > Forum > Przedszkole
Monti1
Witam
Albo słabo szukam,albo nie ma tu takiego tematu smile.gif
Chcę aby na mojej stronie pojawiał się ostatnio dodany obrazek na moim forum.

Coś próbowałem,ale mnie to przerasta.

proszę o pomoc
Cienki1980
Jeżeli podczas zapisywania obrazka dodajesz informacje do bazy z datą dodania albo masz w tabeli z obrazkami pole typu auto_increment to wyciągnij tak:
  1. SELECT * FROM obrazki ORDER BY id DESC LIMIT 1

lub jeżeli nie masz pola auto_increment a np datę dodania to tak
  1. SELECT * FROM obrazki ORDER BY DATA DESC LIMIT 1


Wynik tego zapytania odpowiednio wyświetl na stronie.
Monti1
Witaj
Ja nie dodaję żadnych informacji do bazy o dacie.
Ktoś na forum coś wrzuca i chciałbym aby automatycznie taki obrazek wyskoczył mi na stronie.
Nie bardzo zrozumiałem co napisałeś biggrin.gif
jakbyś mógł to wytłumaczyć łopatologicznie to będę wdzięczny.
Dopiero zaczynam przygodę z php i nie bardzo to dla mnie jasne.

pozdrawiam
Cienki1980
A zapisujesz gdzieś do bazy jakiekolwiek informacje na temat tego obrazka questionmark.gif Czy po prostu uploadujesz plik na serwer do jakiegoś folderu i koniec kropka questionmark.gif
Jeżeli tak jest to musiałbyś odczytywać zawartość tego folderu ( opendir(), readdir() ) i sprawdzić czas kiedy był modyfikowany za pomocą filemtime().
Na tej podstawie będziesz mógł stwierdzić który plik był ostatnio wrzucony na serwer.
Monti1
Posłuchaj,nie wyjasniłem chyba za dobrze:
Mam forum,gdzie co 30 minut (średnio) ktoś wrzuca jakiś obrazek.
I nie jestem w stanie wyłapać ostatniego i pozmieniać na stronie bo w tym czasie może pojawić sie następny.
Coś takiego jest na stronie: www.odkrywca.pl po prawej stronie w słupku na dole "ostatnia identyfikacja"
Tam wskakuje automatycznie ostatnio dodana fotka i w dodatku jest linkiem do wątku.

pozdrawiam
Cienki1980
No to znaczy, że gdzieś zapisujesz dane o tym obrazku questionmark.gif tak czy nie questionmark.gif Jeżeli tak to powiedz jak to zapisujesz a jakoś postaramy Ci się pomóc.

Powiedz co robisz z tym obrazkiem jak ktoś wrzuca go na forum.
Monti1
Nic z nim nie robię. Automatycznie ląduje w folderze z plikami,a na forum pojawia się w poście smile.gif
Cienki1980
Czyli plik jest gdzieś zapisywany do jakeigoś folderu. Musisz przeskanować ten folder za pomocą opendir() i readdir() i potem sprawdzić filemktime() żeby wybrać ten najnowszy.
Przeskalować go i wyświetlić na stronie w odpowiednim miejscu.
Monti1
czuję się trochę jak z innej planety czytając to co piszesz.
To wyższy poziom.
Szczerze się przyznaję,że jestem na początku przygody z php i nie dam rady czegoś takiego stworzyć smile.gif
dziękuję ci za pomoc,ale na razie to się podszkolę w php bo czarno to widze.

pozdrawiam
Cienki1980
Wystarczyło zajrzeć do manuala:D

http://pl.php.net/manual/pl/function.readdir.php << przykład drugi i już masz zczytaną wartość katalogu z plikami

  1. <?php 
  2. if ($handle = opendir('tmp')) {
  3. while (false !== ($file = readdir($handle))) { 
  4. if ($file != "." && $file != "..") { 
  5. echo "".$file.">>";
  6. echo filemtime("tmp/".$file);
  7. echo "<BR>";
  8. } 
  9. }
  10. closedir($handle); 
  11. }
  12. ?>


Ten kod zwróci Ci zawartość folderu tmp ( jeżeli taki będzie ) i wyświetli nazwy plików oraz czasy ich modyfikacji. Teraz wystarczy z czasów modyfikacji wybrać ten największy ( najnowszy ) i masz zdjęcie które zostało ostatnio wrzucone.
Monti1
dzięki,coś będę kombinował smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.