2017-02-07 5 views
1

Comment puis-je télécharger le fichier de présentation (ppt, pptx, pdf) vers le service Google Slides en utilisant PHP.Comment télécharger le fichier de présentation dans Google Slides en utilisant PHP?

Je ne trouve pas un exemple dans ces liens:

https://developers.google.com/slides/quickstart/php

https://developers.google.com/api-client-library/php/support

Mon code:

$service = new Google_Service_Drive($client); 

     $fileMetadata = new Google_Service_Drive_DriveFile([ 
      'name'  => 'My Presentation', 
      'mimeType' => 'application/vnd.google-apps.presentation', 
      // 'mimeType' => 'application/vnd.google-apps.document', 
     ]); 

     $file = $service->files->create($fileMetadata, [ 
      'data'  => file_get_contents(realpath(dirname(__FILE__)).'/Modelo_Slide_Padrao.pptx'), 
      // 'mimeType' => 'application/vnd.ms-powerpoint', // 'application/pdf', 
      'uploadType' => 'multipart', 
      'fields'  => 'id', 
     ]); 
     printf("File ID: %s\n", $file->id); 

Quelqu'un me aider?

Merci.

+0

N'a pas fonctionné! ; ( –

+0

Lequel n'a pas fonctionné? Pptx? – Morfinismo

+0

Oui. N'a pas travaillé avec pptx –

Répondre

2

Vous ne pouvez pas télécharger un fichier de présentation sur Google Slides. Ce que vous devez faire est d'importer le fichier dans Google Drive en utilisant un type de document Google. Jetez un oeil à la reference documentation qui a un exemple de la façon d'y parvenir. Voici les exemples de comment réaliser ce dont vous avez besoin.

PPT Google Diapositives Présentation:

$service = new Google_Service_Drive($client); 

    // CREATE A NEW FILE 
    $file = new Google_Service_Drive_DriveFile(array(
    'name' => 'PPT Test Presentation', 
    'mimeType' => 'application/vnd.google-apps.presentation' 
)); 

    $ppt = file_get_contents("SamplePPT.ppt"); // read power point ppt file 

    //declare opts params 
    $optParams = array(
    'uploadType' => 'multipart', 
    'data' => $ppt, 
    'mimeType' => 'application/vnd.ms-powerpoint' 
); 

    //import pptx file as a Google Slide presentation 
    $createdFile = $service->files->create($file, $optParams); 

    //print google slides id 
    print "File id: ".$createdFile->id; 

PPTX Google Diapositives Présentation:

$service = new Google_Service_Drive($client); 

    // CREATE A NEW FILE 
    $file = new Google_Service_Drive_DriveFile(array(
    'name' => 'PPTX Test Presentation', 
    'mimeType' => 'application/vnd.google-apps.presentation' 
)); 

    $pptx = file_get_contents("SamplePPTX.pptx"); // read power point pptx file 

    //declare opts params 
    $optParams = array(
    'uploadType' => 'multipart', 
    'data' => $ppt, 
    'mimeType' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation' 
); 

    //import pptx file as a Google Slide presentation 
    $createdFile = $service->files->create($file, $optParams); 

    //print google slides id 
    print "File id: ".$createdFile->id; 

PDF au document Google Doc: (n'est pas possible de Google Présentation de diapositives)

$service = new Google_Service_Drive($client); 

    // CREATE A NEW FILE 
    $file = new Google_Service_Drive_DriveFile(array(
    'name' => 'PDF Test Document', 
    'mimeType' => 'application/vnd.google-apps.document' 
)); 

    $pdf = file_get_contents("SamplePDF.pdf"); // read pdf file 

    //declare opts params 
    $optParams = array(
    'uploadType' => 'multipart', 
    'data' => $pdf, 
    'mimeType' => 'application/pdf' 
); 

    //import pdf file as a Google Document File 
    $createdFile = $service->files->create($file, $optParams); 

    //print google document id 
    print "File id: ".$createdFile->id; 

La seule chose qui change dans chaque extrait de code est le mimeType. Pour une référence de types Mime, vous pouvez visit here et pour une référence de types Google Mime, vous pouvez visit here.

+0

Merci est-il possible convertir pdf, ppt, pptx de conduire à google slides ? –

+1

La documentation référencée ci-dessus a un tableau qui explique quel format peut être converti en Google Slides.De ce que je peux voir, seulement Microsoft Powerpoint, qui est ppt et OpenDocument Presentation.Je ne suis pas sûr de pptx et assez sûr qu'il est impossible pour les PDFs – Morfinismo

+0

Bonjour @Morfinismo obtenez-vous ppt ou pptx dans Google Slides par API? –