cs_Tioneb
Messages postés193Date d'inscriptiondimanche 16 décembre 2001StatutMembreDernière intervention29 juillet 2015
-
13 mars 2009 à 16:53
cs_Tioneb
Messages postés193Date d'inscriptiondimanche 16 décembre 2001StatutMembreDernière intervention29 juillet 2015
-
16 mars 2009 à 13:12
Salut,
je suis en train de créer une page qui va servir à afficher un tutoriel vidéo. Sur ce point y'a pas de soucis. Au dessus de la vidéo je veux que la liste des tuto s'affiche sous forme de lien (sauf celui qu'on est en train de regarder). La fonction qui s'occupe de ça se base sur la présence de vidéo dans 1 dossier (en fait 1 vidéo .flv et son .php de configuration associé).
En local ça fonctionne très bien. J'utilise EasyPHP avec la version 5.2.0 de PHP. Par contre, quand j'upload le script; la liste des tutos ne s'affichent pas. Mon site est hébergé sur Free et la version de PHP est 4.4.3. Je pense que le problème doit venir de la compatibilité entre les 2 versions de PHP mais je n'ai rien trouvé avec le manuel php en ligne.
Voici le code de la fonction qui doit poser problème:
<?php
function gen_link($flv){
global $rep_tuto;
$array = glob($rep_tuto. "Tutorial*.flv");
$tmp = array();
$sortie = "";
$i = 1;
if ($array){
foreach ($array as $iterator) {
//do something here;
//echo $iterator. "
";
$tmp[$i] = substr($iterator, strlen($rep_tuto), strlen($iterator) - 15);
$i++;
}
}
//on note le tuto qu'on est en train de regarder
$key = array_search($flv, $tmp); if ($key false OR $key null) {
$key = -1;
}
$nbr_tuto = count($tmp);
for ($i = 1; $i <= $nbr_tuto; $i++){
if (file_exists($rep_tuto. $tmp[$i]. ".php")){
//le fichier de config existe
include($rep_tuto. $tmp[$i]. ".php");
if ($i == $key){
//on est sur la vidéo qu'on regarde
$sortie = $sortie. " ". $flv_title. "
";
} else {
//on est sur une autre vidéo
$sortie = $sortie. "<gras>http://coh.fr.free.fr/ (Sur le jeu Company of Heroes pour PC)
A voir également:
"Url de la page, sur votre site, où est affiché le lien vers"
cs_Tioneb
Messages postés193Date d'inscriptiondimanche 16 décembre 2001StatutMembreDernière intervention29 juillet 2015 16 mars 2009 à 13:12
après moult recherches et essais en mettant des "echo" partout (pour voir les valeurs des variables), j'ai trouvé le problème. Apparemment la fonction "glob" n'est pas prise en charge chez free. Dans le PHPInfo de free, il n'y avait aucune fonction de bridée. Du coup, j'ai remplacé glob par opendir (et modifié un peu ce qui suit). Maintenant ça fonctionne.
Sinon, pour te répondre, effectivement, en local, je suis en E_ALL. Encore une dernière chose, peux-tu me dire pour quelle raison mon code est tordu? (j'ai appris le PHP tout seul, en lisant des codes et des tutoriaux)
--------------------------------------------------------------------------
Visitez mon site sur http://coh.fr.free.fr/ (Sur le jeu Company of Heroes pour PC)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 15 mars 2009 à 10:36
Hello,
outre le fait que le code est tordu...-p
es-tu sûr que ce n'est pas plutôt un problème de chemin ? Parce que là, je ne vois aucune fonction dédiée PHP5 dans ton bout de code.
Et es-tu sûr que le problème vient de cette fonction ?
Bosses-tu, en local, avec error_reporting à E_ALL ? Tu as peut-être une erreur que tu ne vois pas, et qui empêche ton code de fonctionner correctement sur le serveur de Free.
Bref, trop peu d'éléments pour t'aider, là.