IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[PHP-JS] Intégration de PHP dans Javascript


Sujet :

Langage PHP

  1. #1
    fanchy
    Invité(e)
    Par défaut [PHP-JS] Intégration de PHP dans Javascript
    Bonjour,

    J'ai un javascript qui me permet de faire afficher une gallerie d'images en créant un menu de vignettes sur la droite et en affichant les images sur le centre de la page. C'est sympa comme script mais du coup, je suis obligé de spécifier chaque nom de fichier dans ma page.

    Je voudrais pouvoir le rendre dynamique en intégrant du php pour que la modification des fichiers soit automatique dans le javascript. Quelqu'un pourrait-il m'aider parce que je bloque un peu. Je crois que c'est au niveau de la requête d'affichage (mysql_fetch_array...).

    Voici le code original du javascript :

    <?php
    <script language="JavaScript"><!-- //--------------------------------DHTML-------------------
    var nn4 = document.layers;
    var
    nn6 = document.getElementById && !document.all;
    var
    nn = nn4 || nn6;
    var
    ie = document.all && !nn;
    var
    dhtml = document.getElementById || document.all || document.layers;
    function
    js_object(myRef) {
    if (!
    dhtml) {return;}
    if (
    nn6) {myRef = document.getElementById(myRef);}
    else if (
    nn4) {myRef = document.layers&#91;myRef];}
    else {
    myRef = document.all&#91;myRef];}
    return(
    myRef);}
    function
    js_write(myRef, msg) {
    if (
    nn4) {
    js_object(myRef).document.write(msg);
    js_object(myRef).document.close();}
    else {
    js_object(myRef).innerHTML = msg;}
    }
    //--------------------------------DIAPORAMA-------------
    var pics= new Array(
    "groupe/joss000.jpg",
    "groupe/joss004.jpg",
    "groupe/joss005.jpg",
    "groupe/joss003.jpg",
    "groupe/joss001.jpg",
    "groupe/joss002.jpg");
    var
    legends= new Array(
    "",
    "çà part en live!",
    "la chose",
    "le fil vert ou le fil rouge?... Zut! mon lacet!",
    "Photo bout d'bras au réveil...",
    "Après l'effort... le réconfort !");
    //.....................
    //(document.images&#91;0] ..........as main picture for our diaporama)
    var count= -1;
    var
    num= pics.length;
    //.....................
    function set_thumbnails() {
    document.write("<div id='slideshow' class='class1'>");
    for (
    i=0; i<num; i++) {
    document.write("<img src='"+pics&#91;i] +"' width=100px onclick='actualize("+i+")'><p>");}
    document.write("</div>");}
    //.....................
    function actualize(k) {
    count = k;
    document.images&#91;0].src= pics&#91;count];
    js_write('div2',legends&#91;count]);}
    //.....................
    function previous(form) {
    count += -1;
    if (
    count <0) {count= 0;}
    document.images&#91;0].src= pics&#91;count];
    js_write('div2',legends&#91;count]);}
    //.....................
    function next(form) {
    count += 1;
    if (
    count > (num-1)) {count= 0;}
    document.images&#91;0].src= pics&#91;count];
    js_write('div2',legends&#91;count]);}
    -->
    </script>

    ?>
    Colorez votre code PHP sur les forums grâce à Developpez.com

    ______________________________________________________________

    La partie à modifier est donc la suivante :

    var pics= new Array(
    "groupe/joss000.jpg",
    "groupe/joss004.jpg",
    "groupe/joss005.jpg",
    "groupe/joss003.jpg",
    "groupe/joss001.jpg",
    "groupe/joss002.jpg");

    var legends= new Array(
    "",
    "çà part en live!",
    "la chose",
    "le fil vert ou le fil rouge?... Zut! mon lacet";

    Comment puis-je faire pour obtenir une requête qui me sorte les résultats sous cette forme-là ? Merci de votre aide.
    Dernière modification par fanchy ; 25/04/2006 à 17h45.

  2. #2
    Membre chevronné
    Avatar de eric.pommereau
    Homme Profil pro
    Ingénieur, pôle cartographie
    Inscrit en
    Décembre 2004
    Messages
    715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur, pôle cartographie
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2004
    Messages : 715
    Points : 1 790
    Points
    1 790
    Par défaut
    Je suis vraiment désolé mais c'est super dur à lire ton code, je n'ai pas très envie de faire le boulot d'indentation et de présentation à ta place ... et puis pense à te servir de la balise code (le dièse au dessus)

    @+

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    59
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 59
    Points : 71
    Points
    71
    Par défaut Encapsulation ...
    Hello,

    par exemple tu encapsule le javascript
    <?php
    print ("var pics= new Array(
    'groupe/joss000.jpg',
    'groupe/joss004.jpg',
    'groupe/joss005.jpg',
    'groupe/joss003.jpg',
    'groupe/joss001.jpg',
    'groupe/joss002.jpg');");
    ?>

    ainsi le javascript devient une chaine que tu peux construire comme tu veux via une base de donnée, un fichier, un listage de répertoire etc ....

    bye
    O.F
    Ni dieux ni maitre

  4. #4
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    En effet, nous aurions davantage envie de t'aider si tu nous présentais cela correctement.
    Juste pour info, au passage : il s'agit d'intégrer su Javascript dans du PHP, non l'inverse (question de chronologie des évènements).

    Cadeau : http://php.developpez.com/bbcode/

  5. #5
    fanchy
    Invité(e)
    Par défaut
    Bah justement, c'est ça que j'arrive pas à faire, à choper les réponses de ma requête pour en faire un tableau qui soit formaté de la même façon que doit l'être le javascript.

    Quelqu'un à une idée ? Merci.
    (désolé pour la clarté du code tout à l'heure, suit novice ici...)

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    59
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 59
    Points : 71
    Points
    71
    Par défaut C'est du bateau
    Bon ok,
    c'est pourtant bateaux

    Tu as une table de données avec tes photos et tes commentaire associés.
    Ok.

    Tu fais ta requete

    $req_sel=("select photo, commentaire from table_photo");

    $result = msql_query($req_sel, $link);
    if (!$result) {
    die("Échec de la requête : " . msql_error());
    }

    while ($row = msql_fetch_array($result)) {
    $tab_photo[] = $row["photo"]; /* contient
    'groupe/joss000.jpg' */
    $tab_comment[] = $row["commentaire"];
    }

    //ainsi tu as deux tableaux indexe de la même maniere
    //qui vont te permettre de générer le javascript

    en lieux et place du code javascript declarant les tableaux tu inseres

    <!-- ici debut de ton javascript -->
    <?php
    print("var pics=new array(");

    while (list(
    $key, $val) = each($tab_photo)) {
    $js_tab_photo .= "
    '$val',\n");
    }
    $js_tab_photo = substr($js_tab_photo,0,len($js_tab_photo -3) /* pour supprimer la derniere virgule et le \n */
    print(");");

    /* tu fais la même chose avec le tableau des commentaires */
    print("var legends=new array(");
    while (list(
    $key, $val) = each($tab_
    comment)) {
    $js_tab_
    comment .= "'$val',\n");
    }
    $js_tab_comment = substr($js_tab_comment,0,len($js_tab_comment -3) /* pour supprimer la derniere virgule et le \n */
    print(");");
    ?>
    <!-- ici suite de ton javascript -->

    Voili voilou en gros ca doit être ca !
    j'ai pas testé, mais c'est le principe .... de base

    voila c'est du gateau

    Bye et bon code

    O.FOSTIER

Discussions similaires

  1. [PHP-JS] Intégration code Javascript dans PHP
    Par tilou dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 20/04/2006, 15h26
  2. [PHP-JS] intégration java-php
    Par morticia2005 dans le forum Langage
    Réponses: 1
    Dernier message: 21/12/2005, 00h44
  3. [JSP/Tomcat] Intégration de PHP dans Java
    Par milhouz_deglingos dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 17/08/2005, 12h02
  4. Recuperer un tableau php dans javascript
    Par 17mounir dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 11/08/2005, 09h07
  5. [PHP-JS] Mettre du php dans javascript
    Par fisico dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 05/11/2004, 16h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo