Youtube API-загрузка видео перестает работать и как мне решить?

#php #api #youtube-api #youtube-data-api

#php #API #youtube-api #youtube-data-api

Вопрос:

Я пытаюсь загружать видео с помощью php.Проблема после этого цикла:

 // Read the media file and upload it chunk by chunk.
$status = false;
$handle = fopen($videoPath, "rb");
while (!$status amp;amp; !feof($handle)) {
    $chunk = fread($handle, $chunkSizeBytes);
    $status = $media->nextChunk($chunk);
 }
  

Я пробовал этот способ, но у меня все еще есть некоторые ошибки. Но я не знаю, где пошло не так

 $media = new Google_Http_MediaFileUpload(
   $client,
   $insertRequest,
   'video/*',
   file_get_contents($pathToFile),  <== put file content instead of null
   true,
   $chunkSizeBytes
);
$media->setFileSize($size);

$status = false;
while (!$status) {
   $status = $media->nextChunk();
}
  

И появилось следующее неправильное

https://i.stack.imgur.com/z0bnP.png

ниже приведен мой код index.php

         <form method="post" enctype="multipart/form-data" action="upload.php">
            <?php echo (!empty($errorMsg))?'<p class="err-msg">'.$errorMsg.'</p>':''; ?>
            <label for="title">Title:</label>
            <input type="text" name="title" value="" />
            <label for="description">Description:</label>
            <textarea name="description" cols="20" rows="2" ></textarea>
            <label for="tags">Tags:</label>
            <input type="text" name="tags" value="" />
            
            <label for="tags">Privacy:</label>
            <select name="privacy">
                <option value="public">Public</option>
                <option value="private">Private</option>
            </select>
            <label for="file">Choose Video File:</label> <input type="file" name="file" >
            <input name="videoSubmit" type="submit" value="Upload">
    
  

загрузка видео части

 if(isset($_POST['videoSubmit'])){
    // Video info
    $title = $_POST['title'];
    $desc = $_POST['description'];
    $tags = $_POST['tags'];
    $privacy = !empty($_POST['privacy'])?$_POST['privacy']:'public';
    print($_FILES);
    // Check whether file field is not empty
    if($_FILES["file"]["name"] != ''){
        // File upload path
        $fileName = str_shuffle('codexworld').'-'.basename($_FILES["file"]["name"]);
        $filePath = "videos/".$fileName;
        
  

В приведенном выше коде он не может получить videoSubmit и file

Комментарии:

1. Ваш файл $pathToFile действительно существует?

2. Я нахожу, что в моем $pathToFile . Я не знаю, почему он ничего не улавливает

3. Тогда это ваша проблема: $pathToFile должен быть полный путь к видеофайлу, который вы хотите загрузить на YouTube.

4. спасибо, но я нахожу еще одну вещь, которую он не может получить с помощью видеоинформации, кроме того, информация не может быть вставлена в базу данных, поэтому имя файла и путь всегда пусты. Ниже приведен мой код.

5. Извините, но я не совсем понимаю ваш комментарий; мой вопрос: поступает ли ваш видеоконтент (который вы хотите загрузить) из файла, находящегося на вашем компьютере?