我正在开发一个程序,允许用户使用 HTML 表单选择一个文件,然后该程序会将所述文件上传到 Google Drive 并与某个其他用户共享。我已经能够在 Google Drive 中创建一个文件然后共享它;但是一旦我尝试上传一个文件,它就开始走下坡路了。
这很奇怪,因为我认为上传文件的代码是正确的,所以问题一定在于我如何将文件从 HTML 表单获取到 PHP 文件。我的怀疑有点被我试图 echo $_FILES['myfile']['name'] 没有任何反应这一事实所证实。
我将在下面上传两个代码片段,但为了简洁起见,我将省略所有 Google Drive api 身份验证,因为它有效。
索引.php
<form action="../Next.php" method="POST" enctype="multipart/form-data">
<section class="file">
<span>Please select the file to be uploaded </span>
<br>
<label for="myfile">Select a file:</label>
<input type="file" name="myfile" required >
</section>
<section class="submission">
<input type="submit" value="Submit">
</section>
</form>
下一步.php
$myfile=$_FILES['myfile']['tmp_name'];
$type=mime_content_type($myfile);
$drive = new Google_Service_Drive($client);
$file = new Google_Service_Drive_DriveFile();
$file->setTitle('Test');
$file->setDescription('Test');
$file->setMimeType($type);
$data = file_get_contents($myfile);
$uploadedFile = $service->files->insert($file, array(
'data' => $data,
'mimeType' => $type,
));
请记住我省略了验证码,因为我知道它有效。
我不明白为什么这什么都不做,从我在互联网上搜集到的代码是正确的。我认为这个问题可能与 $_FILES['myfile'] 数组有关,但从所有在线文档来看,它似乎也是正确的。
慕森卡
一只名叫tom的猫
慕盖茨4494581