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

PHP & Base de données Discussion :

[Conception] affichage aleatoire d'une image


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut [Conception] affichage aleatoire d'une image
    bonjour,
    je viens de trouver un script en PHP pour afficher aléatoirement une image à chaque rafraichissement de la fênetre d'IE ou Firefox cependant, l'image ne s'affiche pas,
    si quelqu'un peut m'aider à corriger le code
    Merci

    Voici le programme :

    <html>
    <head>

    <?php
    $nbimages=4;
    $nomimages[1]="image1.jpg";
    $nomimages[2]="image2.jpg";
    $nomimages[3]="image3.jpg";
    $nomimages[4]="image4.jpg";
    srand((double)microtime()*1000000);
    $affimage=rand(1,$nbimages);
    ?>
    </head>
    <body>

    <img src="<?echo $nomimages[$affimage];?>" border=0 width=150 height=112 alt="Image aléatoire">

    </body>
    </html>



    A bientot

  2. #2
    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

    Essaie avec
    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
    <?php
     
    $images[] = 'image1.jpg';
    $images[] = 'image2.jpg';
    $images[] = 'image3.jpg';
    $images[] = 'image4.jpg';
     
    $index = mt_rand(0, count($images) - 1);
     
    ?>
     
    <html>
    <head></head>
    <body>
     
    <img src="<?php echo $images[$index]; ?>" border="0" width="150" height="112" alt="Image aléatoire">
     
    </body>
    </html>

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    ça march toujours pô
    dans ton prog le code php est en dehors du code html. c'est voulu ?
    j'ai essayé ton prog en intégrant la partie php entre les balises head puis body. sans succès
    puis j'ai essayé de modifier ton code en remplaçant $images[] par $images[1]...
    toujours rien
    Je vais craquer

  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
    Euh, je ne connais pas ta configuration mais ce code fonctionne à merveille : je l'ai testé par curiosité avant de le poster.

    Tu peux mettre le code PHP où tu veux dans ton script, du monent qu'il est appelé avant d'afficher l'image. Tu peux même le mettre au milieu d'une balise si cela te chante, cela ne changera absolument rien au résultat.
    Laisse les $images[] tels qu'ils sont (sans index), c'est mieux car moins bridé.

    Lorsque tu dis "marche pas", qu'as-tu exactement comme affichage ?
    Vérifie le code source de la page produite, tu verras qu'il y a bel et bien un nom d'image aléatoire.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    J'ai peut-être un autre problème.
    en fait j'ai créé un répertoire "essai" avec 4 images respectivement image1.jpg ... image4.jpg et le prog html que j'ai nommé "image aleatoire php.htm"
    Quand je lance le prog (sous IE 6 ou Firefox 1.0) il s'affiche uniquement le cadre de l'image aux dimensions 150x112 et l'inscription "image aléatoire" à l'intérieur
    mais pas d'image
    est-ce que ça peut venir de la version du PHP ?
    Là, je comprends plus...

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    j'ai oublié de dire :
    P4 3GHz
    Windows XP SP1

  7. #7
    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
    Remplace src="<?php par src="essai/<?php

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    les images et le code html son dans le même répertoire

  9. #9
    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
    Ouarf, pardon, j'avais mal lu ton message...
    Tu as ouvert le script nommé en .htm avec ton navigateur ? Ce sont déjà deux erreurs.
    Je ne peux que te recommander de lire des tutoriels style "premiers pas en PHP", c'est vite fait et ça te rendra un fier service.

    [Edit] Le code que tu avais au départ fonctionne certainement, du coup, mais es'il est utilisé correctement (en passant par le serveur Web), cependant je te recommande d'utiliser celui que je t'ai proposé à la place.

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    effectivement,
    le prog (sur internet est lu sur le serveur)
    sur mon ordi j'ai rien pour l'interpréter, il faut que j'installe un prog avant.
    Easyphp par ex
    C'est ça ?
    Désolé mais mes connaissances en PHP sont proches de zéro

  11. #11
    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
    C'est exactement cela, ton navigateur est incapable d'interprêter le PHP tout seul. Si tu regardes le source HTML produit, tel que je te l'ai suggéré plus haut, tu verras que ton fichier .htm est affiché tel quel. Le navigateur ignore ce qui se trouve dans les balises PHP car il ne connaît pas ce tag HTML (et pour cause...) donc il l'ignore tout simplement.
    En revanche, si tu appelles la page depuis le serveur, alors ce serveur se chargera d'interprêter ton PHP avant d'envoyer la page "produite" (cf. la terminologie utilisée plus haut) au navigateur (le client).

  12. #12
    Membre habitué
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 156
    Points
    156
    Par défaut
    Juste un petit détail array_rand est pratique pour sortir un élement au hasard d'un tableau

  13. #13
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    Voir shuffle()...

  14. #14
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Merci pour vos contributions.
    alors j'ai lancé easy php 1.7 avec Apache et My SQL démarré donc d'après ce que j'ai compris je devrais avoir l'interpréteur sur mon ordi maintenant.
    Mais le prog html cité plus haut ne marche toujours pas

    Voila comment je procède :
    1/ je lance easyphp
    2/ je lance le prog html avec le code php intégré et l'image ne s'ouvre toujours pas.

    que faire ?

  15. #15
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    je viens de mettre le prog html + php et les 4 images sur le serveur.
    Et même côté serveur ça ne marche pas


  16. #16
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 159
    Points : 160
    Points
    160
    Par défaut
    Ton serveur "internet" créé par easy php est accessible a l'adresse http://localhost/

    Pour cela, il faut évidemment que ton EasyPhp soit lancé.

    Enfin, http://localhost/ représente la racine de ton serveur web, qui se trouve en fait (si tu n'as pas changé pdt l'installation) sur c:\Program Files\EasyPHP\www

    Tu peux aussi cliquer droit sur le logo easy php dans la taskbar pres de l'horloge de windows et choisir "explorer" pour y arriver directement.

    Bonne chance

  17. #17
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 60
    Points : 53
    Points
    53
    Par défaut
    en fait c'est tres simple tu doit metre l'ensemble de tes fichiers dans le rep www de easy php
    puis dans ton navigateur ecrire la bonne adresse en sachant que localhost = www donc tu aura une adresse comme localhost/mesfichiers/index.php
    apres ca doit fonctionner
    bonne chance

  18. #18
    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
    N'oublie pas de donner l'extension .php à ton fichier

  19. #19
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    merci a tous,
    j'ai reussi à faire fonctionner le prog depuis le serveur, j'avais oublié de changer l'extension .htm en .php Ca y est ça marche niquel. Merci beaucoup
    Je vais me mettre à étudier plus sérieusement le php pour éviter de poser des questions de néophytes !
    A bientôt

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. javascript sous IE 7 pour un affichage dynamique d'une image
    Par ohhh.gringo dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 31/05/2007, 16h43
  2. [ETAT] Affichage conditionnel d'une image
    Par Ithilien dans le forum IHM
    Réponses: 1
    Dernier message: 03/01/2007, 19h46
  3. [VB6] Affichage centré d'une image
    Par Sophie2097 dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 12/05/2006, 14h28
  4. Erreur pour l'affichage aléatoire d'une image
    Par bellebiquette dans le forum Langage
    Réponses: 3
    Dernier message: 21/04/2006, 22h45
  5. [Tableaux] Ajouter l'affichage dynamique d'une image
    Par leloup84 dans le forum Langage
    Réponses: 3
    Dernier message: 16/02/2006, 09h14

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