Membres


Pas encore membre ?
inscrivez-vous ici

Connexion :
Login
Code
Mot de passe perdu ?
Liste des membres

Melange PHP et javascript

Melange PHP et javascript


Melange PHP et javascript     Posté le 11/07/2008 à 11:46
Rolland75
Membre
rolland75
18 posts
Inscrit le : 29/06/2008
Hello tout le monde,

Je viens vers vous car j'ai un petit problème que je ne sais comment résoudre : en fait, je souhaite afficher des images de mes partenaires qui défile automatiquement grâce a un script javascript, qui sont contenus dans un dossier de mon site.

Donc je récupère toutes les images grâce a un script PHP, que voici :


$chemin="images/partenaires/";
    $dossier=opendir($chemin);
    while($fichier=readdir($dossier)){
        $mauvais=array(".","..","index.php","Thumbs.db"); //les fichiers à ne pas prendre en compte
        if(!in_array($fichier,$mauvais)){
          $part[]=$fichier;
           echo $fichier.', ';
        }
    }

    $nb_part=count($part);


Cela marche impeccable car que je récupère bien toutes les images de mon dossier.

Ensuite je souhaite mettre ces images dans un tableau javascript, mais ca je n'y arrive pas...pour le moment je rentre les noms directement a la main...

var Pix = new Array
("images/partenaires/adidas.jpg"
,"images/partenaires/nike.jpg"
,"images/partenaires/free.jpg"
,"images/partenaires/sports.jpg"
,"images/partenaires/paris.jpg"
,"images/partenaires/lens.jpg"
,"images/partenaires/lol.jpg"
,"images/partenaires/opm.jpg"
,"images/partenaires/calais.jpg"
,"images/partenaires/shemsy.jpg"
,"images/partenaires/akale.jpg"
,"images/partenaires/kanga.jpg"
);


Alors ma question est la suite, comment créer ce tableau en javascript à partir des noms des images récupérées en PHP ???

J'espère avoir été assez clair, j'ai cherché deja dans ce forum et sur le net, mais je n'ai pas trouvé de réponse satisfaisante.

Merci smiley

________________________
RoRoRolland...
 
Réponse à : Melange PHP et javascript     Posté le 11/07/2008 à 14:37
sky
Administrateur
Avatar
Site perso
4188 posts
Inscrit le : 13/08/2003
Essaye un truc omme ceci :

<?php
$output 
'';
$chemin="images/partenaires/";

$dossier=opendir($chemin);
while(
$fichier=readdir($dossier))
{
  
$mauvais=array(".","..","index.php","Thumbs.db"); //les fichiers à ne pas prendre en compte
  
if(!in_array($fichier,$mauvais))
  {
    
$part[]=$fichier;
    
$output .= ',"'.$chemin.$fichier.'"'."\n";
  }
}

$output ltrim($output,',');


$output 'var Pix = new Array('.$output.');';

echo 
$output;
?>


Je n'ai pas tester le code, mais c'est une idée.
Sky

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Melange PHP et javascript     Posté le 11/07/2008 à 16:47
rolland75
Membre
Avatar
18 posts
Inscrit le : 29/06/2008
Oui merci cela marche bien pour recupérer les données dans la variable pix, mais maintenant le defilement d'images ne fonctionne plus...Il y a une erreur, mais laquelle ? smiley

Voici mon code modifié


<SCRIPT LANGUAGE="JavaScript">
<!--
<?php
//PHP pour recupérer les images des partenaires
$output '';
$chemin="images/partenaires/";
$dossier=opendir($chemin);
while(
$fichier=readdir($dossier)){
    
$mauvais=array(".","..","index.php","Thumbs.db"); //les fichiers à ne pas prendre en compte
    
if(!in_array($fichier,$mauvais)){
        
$part[]=$fichier;
        
$output .= ',"'.$chemin.$fichier.'"'."\n";
    }
}
$output ltrim($output,',');
$output 'var Pix = new Array('.$output.');';

?>

var timeDelay = 3;
var howMany = Pix.length;
timeDelay *= 1000; //conversion en secondes
var PicCurrentNum = 0;
var PicCurrent = new Image();
PicCurrent.src = Pix[PicCurrentNum];
function startPix() {
    setInterval("slideshow()", timeDelay);
}
function slideshow() {
    PicCurrentNum++;
    if (PicCurrentNum == howMany) {
        PicCurrentNum = 0;
    }
    PicCurrent.src = Pix[PicCurrentNum];
    document["ChangingPix"].src = PicCurrent.src;
}
//  End -->
</script>


Merci pour votre aide smiley

_______________________
RoRoRolland...
 
Réponse à : Melange PHP et javascript     Posté le 12/07/2008 à 00:21
rolland75
Membre
Avatar
18 posts
Inscrit le : 29/06/2008
J'ai trouvé quel était mon problème, apparement dans cette methode la variable Pix ne semble pas etre declaré, car quand je remplace Pix par une variable que je declare moi meme en rentrant en dur les données cela fonctionne bien !?

Cela me met une erreur a la ligne suivante :

PicCurrent.src = Pix[PicCurrentNum];


Qq1 sait-il quel peut etre le probleme??? smiley

_______________________
RoRoRolland...
 
Réponse à : Melange PHP et javascript     Posté le 12/07/2008 à 00:43
rolland75
Membre
Avatar
18 posts
Inscrit le : 29/06/2008
C'est bon j'ai resolu le probleme. Merci Sky


smiley smiley


Juste une question tout de meme, pourquoi si j'enleve le echo $output, le script ne fonctionne pas ?!?

C'est ma grosse interrogation...

_______________________
RoRoRolland...
 
Réponse à : Melange PHP et javascript     Posté le 12/07/2008 à 10:02
sky
Administrateur
Avatar
Site perso
4188 posts
Inscrit le : 13/08/2003
Salut,
Parce que tout le contenu est dans $output.

.= est une concaténation.

Explication :

<?php
// on déclare une variable normalement : 
$output 'Bonjour';

// on ajoute (concaténer) d'autres informations à la variable $output : 
$output .= ' Rolland';

// un echo nous permettra de voir le contenu : 
echo $output;
?>

Sky

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Vous n'est pas connecté en temps que membre, parceque j'en ai marre du spam, SEUL les membres peuvent poster des messages sur le forum.

Nous  -  Plan du site  -  Informations légale  -  Contact  -  © Graphiks.net