Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [inne][HTML][PHP]Długie buforowanie filmów
Mis323
post 19.08.2019, 22:34:21
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.08.2019

Ostrzeżenie: (0%)
-----


Cześć,
Zacząłem się uczyć php i trochę javy. Mam następujący problem. Zrobiłem stronę z możliwością dodawania filmów mp4, problem w tym że na stronie jest 27 filmów. Wszystkich jest około 170 czas trwania około 50 min każdy, problem w tym że strona potrzebuje około 5 min żeby załadować wszystkie 27 filmów. Co można zrobić żeby filmy wczytywały się szybciej.



Oto kod php z którego obecnie korzystam
  1. <?php
  2. include('login.php'); // wymuszenie zalogowania się do strony
  3. include('./db/connection.php'); // polaczenie z baza danych
  4.  
  5. $page = isSet( $_GET['page'] ) ? intval( $_GET['page'] - 1 ) : 0;
  6. $limit = 27;
  7. $from = $page * $limit;
  8.  
  9. //wyswietlanie rekordow
  10.  
  11. $zapytanie = $pdo->prepare('SELECT * FROM baza ORDER BY id DESC LIMIT '.$from.','.$limit.'' ); //zmienna $pdo pochodzi z db/connection.php
  12. $zapytanie->execute(); // wykonaj zayptanie do bazy danych
  13.  
  14. while($rekord = $zapytanie->fetch()) {
  15.  
  16. echo"<div class='col-md-4'><div class='card; bg-dark m-2'><div class='embed-responsive embed-responsive-16by9'>
  17. <video controls preload='auto|metadata|none'><source src= $rekord[url] type='video/mp4' frameborder='0' ></video></div><div class='card-content text-center'><span class='card-title'><a href=index.php?v=watch&id=$rekord[id] class='text-white'>$rekord[nazwa]</a></span></div><!-- card content --> </div></div>";
  18.  
  19. }
  20.  
  21.  
  22. //Paginacja rekordów
  23.  
  24. ob_start(); // przejecie wyświetalnia strony
  25.  
  26. function t1($val, $min, $max) {
  27. return ($val >= $min && $val <= $max);
  28. }
  29.  
  30. $count = $pdo->query( 'SELECT COUNT( id ) as cnt FROM baza ORDER BY id DESC ' )->fetch()['cnt'];
  31.  
  32.  
  33.  
  34.  
  35. $allPage = ceil( $count / $limit );
  36. $sql = 'SELECT * FROM baza id DESC LIMIT ' . $from . ', ' . $limit;
  37. $tbl = $pdo->query( $sql );
  38.  
  39.  
  40. if( $page > 4 ) {
  41. echo '<a href="index.php?page=1"> < pierwsza strona </a> | ';
  42. }
  43. for( $i = 1; $i <= $allPage; $i++ ) {
  44. $bold = ( $i == ( $page + 1 ) ) ? 'style="font-size: 24px;"' : '';
  45. if( t1( $i, ( $page -3 ), ( $page + 5 ) ) ) {
  46. echo '<a ' . $bold . ' href="index.php?page=' . $i . '">' . $i . '</a> | ';
  47. }
  48. }
  49. if( $page < ( $allPage - 1 ) ) {
  50. echo '<a href="index.php?page=' . $allPage . '">ostatnia strona > </a> | ';
  51. }
  52. $pagi = ob_get_contents(); // przejecie wyswietlanej tresci do ziennej $page
  53. ob_end_clean(); # zablokowanie wyświetlania strony. Teraz można wyświelić stronne w dowolnym miejscu prz użyciu echo $page
  54.  
  55.  
  56.  
  57. ?>
  58.  
  59.  
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.04.2024 - 01:09