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

SQL Procédural MySQL Discussion :

[MySQL] Pb image aleatoire


Sujet :

SQL Procédural MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut [MySQL] Pb image aleatoire
    Bonjour je débute en Php et j'essaie de faire fonctionner le script suivant qui va chercher aleatoirement un image dans ma BD (1 table: images) :

    Tout marche parfaitement sauf l'affichage:
    <img src="images/<? echo $nomimages[$affimage];?>" border=0 width=50 height=50 ">
    IL ne trouve pas l'image. Peut on proceder ainsi? (En fait les images sont directement stockées dans la base mais je ne sais pas ou )

    Merci d'avance,

    Pour info: le script

    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
    40
    41
    42
    <?php
    // information pour la connection à le DB
    $host = '';
    $user = '';
    $pass = '';
    $db = 'j-pack_org_pictures';
     
    // connection à la DB
    $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
    mysql_select_db($db) or die ('Erreur :'.mysql_error());
     
    // requête SQL qui compte le nombre total d'images dans la table et qui
    //récupère tous leurs noms 
    $select = 'SELECT * FROM images';
    $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
    $nbimages= mysql_num_rows($result);
     
    // si on a récupéré un résultat on l'affiche.
    if($nbimages) {
        // on remplit un tableau contenant les noms des images
        $numimage=0;
     
        while($row = mysql_fetch_array($result)) 
       {
           $nomimages[$numimage]=$row["img_nom"];
           $numimage++;
     
       }
     
       // on recherche aléatoirement le numéro de la case du tableau contenant le nom de l'image à afficher
       srand((double)microtime()*1000000);
       $affimage=rand(1,$nbimages); 
       echo $affimage;
       echo $nomimages[$affimage];
    ?>
     
       <!-- Affichage de l'image -->
       <img src="images/<? echo $nomimages[$affimage];?>" border=0 width=50 height=50 ">
     
    <?
    }
    ?>

  2. #2
    Membre actif Avatar de AlphaYoDa
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 213
    Points : 210
    Points
    210
    Par défaut
    c'est quoi le résultats de :

    une fois rempli ?


    Tu peux regarder cet article aussi :
    http://www.greggdev.com/web/articles.php?id=6

  3. #3
    Membre actif

    Inscrit en
    Mai 2004
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 162
    Points : 264
    Points
    264
    Par défaut
    Avec shuffle() ce sera encore plus simple !

    http://fr.php.net/manual/fr/function.shuffle.php

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    la génération aleatoire marche top si je fais un echo de $affimage j'obtient 1 ou 2 aleatoirement (2 images ds ma base)
    C'est juste l'affichage qui foire.

    print_r($_nomimages); donne rien ...

    Merci de vos reponses si rapides

  5. #5
    Membre confirmé Avatar de KibitO
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 616
    Points : 606
    Points
    606
    Par défaut
    Il y a l'extension de l'aimage avec ? sinon il faut la concaténer.

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par KibitO
    Il y a l'extension de l'aimage avec ? sinon il faut la concaténer.
    OUi en fait la question a la con que je me pose est a quoi correspond le chemin
    <img src="images/<? echo $nomimages[$affimage];?>

    images c'est le nom de ma table (par ce que j'ai pas de rep images) ???
    sinon comment acceder ?

Discussions similaires

  1. definir une image aleatoire dans une requete mysql
    Par idamarco dans le forum Langage
    Réponses: 4
    Dernier message: 10/01/2009, 17h19
  2. Probleme d'image aleatoire
    Par john38 dans le forum Flash
    Réponses: 7
    Dernier message: 19/05/2007, 23h09
  3. [FLASH 8] Full browser avec une image aléatoire
    Par seden dans le forum Flash
    Réponses: 1
    Dernier message: 29/10/2006, 10h36
  4. 1 son sur 2 images aleatoires
    Par Creative dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 15/06/2006, 17h56
  5. Réponses: 3
    Dernier message: 19/12/2005, 13h56

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