Publié le 14/05/2011
Auteur fobec
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Inclure une video Youtube sur son site web

Youtube.com est une plateforme gratuite de partage de vidéo. A l'aide d'un player, ces vidéos peuvent ętre visualisées par les visiteurs de son site web. Lorsque l'on génère une page web dynamiquement avec PHP, la class YoutubeVideoIncluder inclut automatiquement la vidéo à partir d'un lien Youtube.

Afficher une video Youtube avec PHP

Le principe de la class est de simplifier l'affichage du player Youtube et de proposer une vidéo YouTube aux visiteurs de nos sites .
function parse(): extrait l'url de la vidéo et génère le code HTML,
function __toString(): retourne le code HTML du player,
function setSize(): fixer la taille de la vidéo.

<?php
/**
 * Inclure une video YouTube sur son site
 * http://www.fobec.com/php5/958/inclure-une-video-youtube-sur-son-site-web.html
 * @author fobec.com 2011
 */
class YoutubeVideoIncluder {
 
    private $html='';
    private $width=640;
    private $height=390;
 
    /**
     * Assembler le code HTML à partir d'une URL Youtube
     * @param string $url url de la video
     */
    public function parse($url) {
        preg_match("#http://(.*).youtube.com/watch?v=(.*)(&(.*))?#", $url, $matches);
 
        if (!isset($matches[2])) {
            throw new Exception("URL Youtube incorrecte !!!");
        }
$this->html='<object width="'.$this->width.'" height="'.$this->height.'">'."n";
$this->html.='<param name="movie" value="http://www.youtube.com/v/'.$matches[2].'&hl=fr&fs=1"></param>'."n";
$this->html.='<param name="allowFullScreen" value="true"></param>'."n";
$this->html.='<embed src="http://www.youtube.com/v/'.$matches[2].'&hl=fr&fs=1"';
$this->html.='type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="'.$this->width.'" height="'.$this->height.'"></embed>';
$this->html.='</object>';
    }
 /**
     * Fixer la taille de la video
     * @param int $width
     * @param int $height
     */
    public function setSize($width, $height) {
        $this->width=$width;
        $this->height=$height;
    }
 
    /**
     * Code HTML du player video
     * @return
     */
    public function  __toString() {
        return $this->html;
    }
}
?>

Exemple de video dans la page HTML

En parcourant le site de YouTube.com, une vidéo retient toute notre attention. 4 lignes en PHP suffissent pour partager la vidéo sur son propre site web.

$youtubeVideoIncluder=new YoutubeVideoIncluder();
$youtubeVideoIncluder->setSize(360,180);
$youtubeVideoIncluder->parse('http://www.youtube.com/watch?v=DNljNDrox8M');
echo $youtubeVideoIncluder;


Le script PHP génère le code HTML nécéssaire pour la vidéo choisir. A l'affichage, le player video YouTube.com ainsi que la vidéo sont automatiquement chargés.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
php5 - script
Mise a jour
14/05/2011
Visualisation
vu 2707 fois
Public
Internaute
Auteur de la publication
Fobec
Admin
Auteur de 267 articles
|BIO_PSEUDO|
Commentaires récents

Publié par JMC dans logiciel

L'adresse donnée est celle du provider et non celle de l'utilisateur apparemment, il me localise a Braine l'Alleud et je me trouve à Huy ?
Sinon génial qui en est l'auteur ?
Cordia...

Publié par etoiliste010 dans java

BONSOIR le code compile mais
Grave: null
com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first. gd4sm1845967wib.6

at com.sun.mail.smtp.SMTPTransport.i...

Publié par vieux dans CMS

et comment ce le procurent ton ?

Publié par l'indik dans java

Sauf que si l'objet n'est plus utilisé, quand tu fait ton new , la mémoire sera automatiquement libéré si cela est nécessaire. Donc l'utilisation de System.gc() n'es...

Publié par coramarr dans java

Peut-on trouver des infos sur cette suite qui serait utilise en statistiques. Des documents ou ouvrages qui relatent les divers possibilites d'utilisation de cette suite.
Je suis un particulier ni...