lequel?
le format ASX ou le fichier qu'il contient?
l'exécution est bien sur la même machine où est localisé le fichier?
lequel?
le format ASX ou le fichier qu'il contient?
l'exécution est bien sur la même machine où est localisé le fichier?
c'est le fichier "multimedia.mp3" qui se copie, oui la je teste tout sur la meme machine
ce doit être le cache du navigateur...
créer un nouveau fichier php sous le nom "wmplayer.php" qui est
ensuite les liens doit-être de la forme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 <?php // // wmplayer.php // if(isset($_GET['m'])) { $fichier=urldecode($_GET['m']); if(file_exists($fichier)) { $asf=' <ASX VERSION="3.0"> <ENTRY> <REF HREF="'.realpath($fichier).'" /> </ENTRY> </ASX> '; header('Content-Type: video/x-ms-asf'); header('Content-Length: '.strlen($asf)); header('Accept-Ranges: bytes'); header('Content-Disposition: inline; filename="multimedia.asx"'); echo $asf; exit(0); } echo 'fichier innexistant'; } ?>
"enregister la cible sous..." devrait proposer "multimedia.asx" avec IE.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2<a href="wmplayer.php?m=<?php echo urlencode('musique/'.$donnees['nom']);?>">Lancer</a>
Yesss merci à toi daniel61 ! t'es un chef !
mais petite question?
si je souhaite faire pareil mais pour un autre format ?
par exemple .wpl pour une playlist ? ou .avi pour un clip ?
je dois modifier content_type="video/x-ms-wma" ?? et l'extension dans le lien <a href.... ?
ASX est le format de playlist pour Windows Media Player. donc tous les formats audio/vidéo supportés fonctionneront... incluant AVI. donc rien de rien n'est a changer dans le code php.
WPL manque a ma culture ce doit être ASX avec un autre nom... à vérifier. Est-ce qu'avec notepad tu peux ouvrir un WPL? si oui est-ce que ça ressemble à
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <ASX VERSION="3.0"> <ENTRY> <REF HREF="c:\web\localhttp\musique\BB King - Shotgun Blues.mp3" /> </ENTRY> </ASX>
le code:
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 <?wpl version="1.0"?> <smil> <head> <meta name="Generator" content="Microsoft Windows Media Player -- 11.0.5721.5145"/> <meta name="AverageRating" content="43"/> <meta name="TotalDuration" content="3097658"/> <meta name="ItemCount" content="15777"/> <meta name="ContentPartnerListID"/> <meta name="ContentPartnerNameType"/> <meta name="ContentPartnerName"/> <meta name="Subtitle"/> <author/> <title>Musique</title> </head> <body> <seq> <media src="D:\Musique\Famille\Lyly Allen - Smile.mp3"/> </seq> </body> </smil>
ouais... un autre format de playlist, mais qui peut être par CID, donc non physique comme une radio par exemple.
y'a malheuseusement pas de type mime pour WPL, alors un convertisseur est nécessaire.
donc, ajout d'un petit convertiseur WPL vers ASX pour trouver le(s) média physique(s) dans le WPL et les transformer en ASX.
normalement, s'il trouve 20 media physiques, alors les 20 fichiers joueront consécutivement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 <?php // // wmplayer.php // if(isset($_GET['m'])) { $fichier=urldecode($_GET['m']); if(file_exists($fichier)) { if(preg_match('#\.wpl$#i',$fichier)) { $wpl=file_get_contents($fichier); if(!preg_match_all('#<media(?:(?!src!>).)+src\s*=\s*"([^"]+)"#isU',$wpl,$media)) {exit('aucun média WPL physique');} $asf='<ASX VERSION="3.0">'; foreach($media[1] as $m) { $asf.='<ENTRY><REF HREF="'.$m.'" /></ENTRY>'; } $asf.='</ASX>'; } else { $asf=' <ASX VERSION="3.0"> <ENTRY> <REF HREF="'.realpath($fichier).'" /> </ENTRY> </ASX> '; } header('Content-Type: video/x-ms-asf'); header('Content-Length: '.strlen($asf)); header('Accept-Ranges: bytes'); header('Content-Disposition: inline; filename="multimedia.asx"'); echo $asf; exit(0); } echo 'fichier innexistant'; } ?>
Yesss ! Merci daniel61 ! t'es vraiment un AS ! ton code marche à merveille pour tout les formats dont j'ai besoin !
J'aurai encore une mini question... si j'ose abusé de ton temps....
j'ai créé un champ dans ma BDD pour l'extension de mon fichier, car pour choisir sois un mp3 ou une playlist wpl je dois modifier mon code à la main.
Et j'ai une erreur dans ma ligne mais je ne vois pas ou...
Code : Sélectionner tout - Visualiser dans une fenêtre à part <a href="wmplayer.php?m=<?php echo urlencode('musique/'.$donnees['nom']'.'.$donnees['format']);?>">Lancer</a>
il manque 1 point après ['nom']
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2<a href="wmplayer.php?m=<?php echo urlencode('musique/'.$donnees['nom'].'.'.$donnees['format']);?>">Lancer</a>
ah mais comme je suis bête vraiment dsl...
ça fonctionne à merveille sur FireFox par contre sur IE quand je lance ma musique il ne trouve pas la page, c'est un problème de IE ou de mon code ?
- - erreurs - -
Internet Explorer ne peut pas afficher cette page Web
Causes les plus probables:
- Vous n'etes pas connecté a internet
- le site web rencontre des problèmes
etc....
IE7? quelle adresse est affichée?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2<a href="./wmplayer.php?m=<?php echo urlencode('musique/'.$donnees['nom'].'.'.$donnees['format']);?>">Lancer</a>
oui sur IE7,
il me redirige sur une autre page et l'erreur est:
Impossible de trouver 127.0.0.1
est-ce seulement pour ce lien ou pour tout le localhost?
tout mon site fonctionne mais dès que je lance une musique il met cette erreur
Impossible de trouver "127.0.0.1"
DNS Erreur - le Serveur est introuvable
est-ce que le lien suivant fait une erreur?
est-ce que tu as un exemple d'url vers un mp3.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2<a href="wmplayer.php?m=test">test</a>
si j écris juste ce lien, IE7 me marque fichier inexistant
et si je mets le lien d'un mp3 ça fonctionne mais ça le télécharge en Temp
Code : Sélectionner tout - Visualiser dans une fenêtre à part <a href="musique/mamusique.mp3">test</a>
c'est correct pour le fichier inexistant, il devrait aussi dire la même sur ce lien
essayer aussi de mettre en commentaire la ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 wmplayer.php?m=test.www
dans wmplayer.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2//header('Content-Disposition: inline; filename="multimedia.asx"');
Partager