Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne]ładowanie tylko widocznych zdjęć
Forum PHP.pl > Forum > Przedszkole
brychu
Cześć. Stworzyłem baaaardzo prosty sklep internetowy. Odczyt z bazy i wyświetlanie w tabeli. Po 4 zdjęcia w rzędzie. Zależy mi, żeby to nie był rozbudowany CMS, tylko moja mała stronka, bo raz, że taka wystarczy a dwa, że mogę wszystko modyfikować wedle upodobań.
Pytanie brzmi: gdzie znajdę skrypt, dzięki któremu ładować będą się tylko zdjęcia widoczne aktualnie na monitorze?
Jeśli użytkownik ma czekać na załadowanie się 50 zdjęć, to prędzej zrezygnuje niż będzie czekał. Zrobiłem oczywiście pomniejszone zdjęcia na głównej (miniaturki), ale czytałem, że i tak ładuje pełną wagę pliku i fizyczna wielkość nie ma większego znaczenia.

www.taniepranie.zgora.pl/sklep
brychu
Tak czytam o lazy loadingu

A nie wystarczy tak?
  1. <img src="https://picsum.photos/id/237/500/300" loading="pies" loading="lazy" alt="id" /><br>
dublinka
Podczas dodawania obrazu rob miniature i te miniature wyswietlaj
brychu
Jak zmienić ścieżkę zapisu zdjęcia?
I od razu dodam, że $nazwa to nie nazwa pliku tylko nazwa towaru (tak jakby co ;] )

  1. <?php
  2. require_once "connectbase.php";
  3.  
  4. //IMPORT ZMIENNYCH Z POPRZEDNIEJ STRONY//
  5. $nazwa=$_POST['nazwa'];
  6.  
  7. //POBIERANIE Z BAZY ID//
  8. $pobierzid = $mysqli->query("SELECT * FROM `sklep` WHERE `nazwa`='$nazwa'");
  9. while ($r = $pobierzid->fetch_assoc()) {
  10. $id=$r['id'];
  11. }
  12.  
  13.  
  14. $plik_tmp = $_FILES['image']['tmp_name'];
  15. $plik_nazwa = $_FILES['image']['name'];
  16. $plik_nazwa = $id.'.jpg';
  17. $save_file = $plik_nazwa;
  18.  
  19.  
  20. if(is_uploaded_file($plik_tmp)) {
  21. move_uploaded_file($plik_tmp, ''.$save_file.'');
  22. echo 'tmp: '.$plik_tmp.'<br>';
  23. echo 'name: '.$plik_nazwa.'<br>';
  24. echo 'id: '.$id.'<br>';
  25. echo '
  26. <form name="nowy4" method="POST" action="nowy4.php">
  27. <table>
  28. <tr>
  29. <td>WYMIARY</td>
  30. <td><input type="text" class="wpis" name="wymiar1" value=""></td>
  31. <td><input type="text" class="wpis" name="wymiar2" value=""></td>
  32. </tr>
  33. <tr>
  34. <td>CENA</td>
  35. <td><input type="text" class="wpis" name="cena" value=""></td>
  36. </tr>
  37. <tr>
  38. <td>WŁOSIE</td>
  39. <td><input type="text" class="wpis" name="wlosie" value=""></td>
  40. </tr>
  41. </table>
  42. <INPUT type="HIDDEN" NAME="id" VALUE="'.$id.'">
  43. <input type="submit" value="DODAJ" style="height:100px; width: 340px; background-color:green;"/>
  44. ';
  45.  
  46.  
  47.  
  48. $img = imagecreatefromjpeg(''.$save_file.'');
  49.  
  50. $width = imagesx($img);
  51. $height = imagesy($img);
  52.  
  53.  
  54. $width_mini = 300; // szerokosc obrazka
  55. $height_mini = 300; // wysokosc obrazka
  56. $img_mini = imagecreatetruecolor($width_mini, $height_mini);
  57.  
  58.  
  59. imagecopyresampled($img_mini, $img, 0, 0, 0, 0, $width_mini , $height_mini, $width , $height);
  60.  
  61.  
  62. imagejpeg($img_mini, "min".$save_file."", 80); // utworzona miniaturka liczba (80) oznacza jakos obrazka od 0 do 100
  63. imagedestroy($img);
  64. imagedestroy($img_mini);
  65.  
  66. }
  67. ?>
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.