2013-11-20 3 views
1

Итак, у меня есть видеоплеер со следующим исходным кодом.PHP URL-адрес видео с GET

<video width="320" height="240" controls> 
    <source src=<?php echo $tryOne; ?> type="video/mp4"> 
</video> 

Это будет отражать нечто похожее на нижеследующее и вставить его в качестве исходного видео.

'176.227.210.66/Kuroko%20no%20Basket%202%20Episode%205.mp4?st=zEws3h1Xg-to07f3as6KqA&e=1385059955' 

Однако плеер не загружает видео. Если я открою исходный код страницы и скопирую url генерации в адресную строку и нажмите enter, он перейдет к прямому URL-адресу и загрузит видео просто отлично. Я думаю, что игрок не будет загружать URL-адрес, потому что в нем есть переменные GET, и мне нужно знать, как это исправить. Скажите, пожалуйста, как я могу загрузить видео в проигрывателе из вышеуказанного URL-адреса с помощью переменных GET.

Примечание: игрок будет загружать видео просто отлично, если он назван без переменных get.

+0

Вы уверены, что это MP4? – putvande

+0

По моему опыту, тег видео очень придирчив относительно формата файла, а также типа. Только мои 2 цента. Другой способ проверить, что проблема - это не просто отсутствующий «http: //», - это поставить все это как простой html и посмотреть, работает ли он. –

ответ

2

Согласно HTML specification for <video>, вам нужен действительный URL:

SRC = непустой URL потенциально окруженное пробелами. URL-адрес видео.

В этом случае отсутствует информация протокола (http://), и он не распознается как видео-файл src. Измените значение $tryOne, чтобы включить информацию о протоколе или вручную добавить ее к переменной при выводе на страницу. Также может быть хорошей идеей URL-кодировать строку.

Например:

<video width="320" height="240" controls> 
    <source src=<?php echo 'http://'.urlencode($tryOne); ?> type="video/mp4"> 
</video> 

Live demo.

+0

это, скорее всего, ответ. Браузер добавляет его при вводе URL-адреса в адресной строке, но явно не в источнике ... Я бы включил переменную, но вместо причины эха в этом случае протокол может быть частью адреса, откуда я вижу его –

+0

@ Bartdude: Да, добавление 'http: //' должно решить проблему. Я обновил ответ демо, чтобы доказать это. :) –

Смежные вопросы