Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [inne][PHP]Bład tworzenia filmu
Puchatek320
post 13.12.2019, 23:16:19
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 4.11.2019

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


Cześć,
Wiele razy mi pomagaliście może teraz też się uda. Korzystam z FFMEPG jeśli wejdę na stronę edycji filmu to wyświetla się pole input do wstawienia czasu od którego ma zacząć tworzyć film do tego momentu jest wszystko dobrze, problem zaczyna się podczas tworzenia. Już tłumaczę o co chodzi skrypt najpierw usuwa plik o podanej nazwie następnie tworzy nowy zwiastun filmu na podstawię całego filmu i tutaj zaczyna się problem ponieważ pomimo ustawienia innego czasu tworzenia zwiastunu jest tworzony dokładnie taki sam plik który był. nie było by w tym nic dziewnego ale skrypt działa co 3 - 4 raz tzn. Tworzy film z czasu podanego z inputa. Dla jasności dam przykład poniżej.

mam zwiastun filmu z 13 min wchodzę na stronę edytuje go, i zmieniam czas na 20 min stary plik jest usuwany następnie tworzy się nowy, problem w tym że tworzy się z 13 min zamiast 20. Jeśli spróbuje x4 to w końcu zadziała prawidłowo. Może ktoś będzie znał rozwiązanie lub spotkał się z czymś podobnym.


  1.  
  2. //tworzenie zwiastunu filmu
  3. $result = $pdo->prepare('SELECT * FROM filmy WHERE id = :id');
  4. $result->bindParam(':id', $_GET['id']);
  5. $result->execute();
  6. $category = $result->fetch();
  7.  
  8.  
  9. $result = $pdo->prepare('SELECT `url` FROM `filmy` WHERE id = :id'); // folder gdzie znajduje się plik do zrobienia zwiastunu filmu
  10. $result->bindParam(':id', $_GET['id']);
  11. $result->execute();
  12. $nazwafilm = $result->fetch();
  13. foreach($nazwafilm as $nazwa);
  14. global $nazwa;
  15.  
  16. $result = $pdo->prepare('SELECT `short` FROM `filmy` WHERE id = :id'); // nazwa pliku do usunięcia
  17. $result->bindParam(':id', $_GET['id']);
  18. $result->execute();
  19. $usunplik = $result->fetch();
  20. foreach($usunplik as $usun);
  21.  
  22. $result = $pdo->prepare('SELECT `id` FROM `filmy` WHERE id = :id'); // nazwa pliku do zapisu
  23. $result->bindParam(':id', $_GET['id']);
  24. $result->execute();
  25. $nazz = $result->fetch();
  26. foreach($nazz as $naz);
  27.  
  28.  
  29. $zapis = 'filmy/short/'; // folder zapisu przetworzonego pliku
  30.  
  31.  
  32. if (empty($_POST['czas'])) {
  33.  
  34.  
  35. } else{
  36. $nowyczas=$_POST['time']; // pobieranie czasu z inputa ze strony
  37. unlink($usun); // usuwanie istniejącego zwiastunu
  38. if (unlink($usun)){
  39. @exec('ffmpeg -i ' . $nazwa . ' -ss ' . $nowyczas . ' -t 00:00:15 ' . $zapis . '' . $naz . '.mp4'); // tworzenie nowego zwiastun
  40. }else{
  41.  
  42. echo "Przepraszamy błąd tworzenia nowego filmu";
  43. }
  44.  
  45.  
  46. }
  47.  


Kod inputa
  1. <input id="appt-time" type="time" name="time" step="1" value="00:00:00" min="00:00:00" max="05:00:00" >[php][/php]


Okey, Wiem już o co chodzi jeśli edytuje pole input na czas np. 00:20:00 to input wyświetla 00:00 Może ktoś wyjaśnić jaki jest powód takiego stanu rzeczy?

Ten post edytował Puchatek320 13.12.2019, 23:41:18
Go to the top of the page
+Quote Post
trueblue
post 14.12.2019, 07:57:12
Post #2





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

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


A to w jakim celu jest?

  1. unlink($usun); // usuwanie istniejącego zwiastunu
  2. if (unlink($usun)){


--------------------
Go to the top of the page
+Quote Post
Puchatek320
post 14.12.2019, 23:17:24
Post #3





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 4.11.2019

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


kod pisany dzień wcześniej w późnych godzinach tongue.gif Sam właśnie się zastanawiam w jakim celu to zrobiłem
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: 29.03.2024 - 02:39