Portail PHP

Forum de discussion et d'aide au php

Vous n'êtes pas identifié.

Annonce

Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides.
FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans.
Proposez vos news : si vous avez un evenement à annoncer
le chat : venez discuter de php.
 

#1 07-09-2008 15:51:47

damda58
Membre
Date d'inscription: 07-09-2008
Messages: 9

aficher une image en fonction d'un chiffre

Bonjour

je voudrais afficher dans un tableau les champs item_name, id_item (sous forme d'image) et description d'une table apelé site_item
pour afficher l'image de l'item il faut que le script compare l'id de l'item avec les noms d'image contenu dans ../images les images aurais comme nom l'ID de chaque item
je voudrais savoir si vous pourriez m'aider a réalisé ceci
merci wink

comme exemple un bout de code

Code:

function imgrace($id)
{
if ($id == 1)
{
echo "<img src=\"../images/1.gif\" alt=\"\">";
}

sauf qu'il faudrait que le code recherche dans le dossier ../images/  car il y a beacoup d'images et je ne peut les entrées 1 par 1.
dans la table les chiffres sont respectivement similaires au nom des images des items

j'esper que vous pourriez m'aider, si vous avez des question je reste a votre disposition
merci

Hors ligne

 

#2 08-09-2008 07:24:43

lolo3129
Membre
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 566
Site web

Re: aficher une image en fonction d'un chiffre

Salut, il suffit de mettre $id dans la chaine.

Code:

function imgrace($id)
{
echo "<img src=\"../images/{$id}.gif\" alt=\"\">";
}

Hors ligne

 

#3 10-09-2008 01:31:17

damda58
Membre
Date d'inscription: 07-09-2008
Messages: 9

Re: aficher une image en fonction d'un chiffre

Merci pour cette réponse sa marche impeccablement bien smile je n'avait pas pensé a sa mais a autre cose de bien plus complexe ^^

Hors ligne

 

#4 10-09-2008 04:46:19

damda58
Membre
Date d'inscription: 07-09-2008
Messages: 9

Re: aficher une image en fonction d'un chiffre

J'ai maintenant un autre soucis hmm
j'aimerais afficher le contenu de certains champ d'une table dans un tableau et aussi l'image qui correspond.
pour les images j'ai une fonction toute prete voici mon code

Code:

<?php
// Creation et envoi de la requete
$query = "SELECT item_name,id_item, desc FROM wow_item" ;

$result = mysql_query($query);

// Recuperation des resultats
while($row = mysql_fetch_row($result)){
$identification = $row[0];
$apercu = $row[1];
$desc = $row[2];
echo "<tr>\n
<td>$identification</td>\n
<td></td>\n
<td>$desc</td>\n
</tr>\n";

}



?>

la fonction pour les images est :<?php Lootup("$apercu"); ?>
j'arrive a afficher le contenu de la table avec le code su dessus et j'arrive a afficher les images de la table avec la fonction mais je n'arrive pas a mettre la fonction dans le tableau hmm
si quelqu'un pouvais m'aider sa serait sympas smile

Hors ligne

 

#5 10-09-2008 05:31:54

lolo3129
Membre
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 566
Site web

Re: aficher une image en fonction d'un chiffre

Code:

<?php
// Creation et envoi de la requete
$query = "SELECT item_name,id_item, desc FROM wow_item" ;

$result = mysql_query($query);

// Recuperation des resultats
while($row = mysql_fetch_row($result)){
$identification = $row[0];
$apercu = $row[1];
$desc = $row[2];
echo "<tr>\n
<td>$identification</td>\n
<td>". Lootup($apercu) ."</td>\n
<td>$desc</td>\n
</tr>\n";

}
?>

Hors ligne

 

#6 10-09-2008 07:03:10

damda58
Membre
Date d'inscription: 07-09-2008
Messages: 9

Re: aficher une image en fonction d'un chiffre

Les images s'affiches bien mais a l'extérieur du tableau d'ou pourrais venir le probleme ?
(je peut mettre mes code si necessaire)

Hors ligne

 

#7 10-09-2008 07:58:33

lolo3129
Membre
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 566
Site web

Re: aficher une image en fonction d'un chiffre

ça aiderait, oui.

Hors ligne

 

#8 10-09-2008 08:01:58

damda58
Membre
Date d'inscription: 07-09-2008
Messages: 9

Re: aficher une image en fonction d'un chiffre

d'accord alors voici le code qui affiche mon tableau

Code:

<table border="1" cellpadding="0" cellspacing="0">

<tr>

<th>Identification</th>

<th>Apercu</th>

<th>Description</th>

</tr>
<?php
// Creation et envoi de la requete
$query = "SELECT item_name,id_item, desc FROM wow_item" ;

$result = mysql_query($query);

// Recuperation des resultats
while($row = mysql_fetch_row($result)){
$identification = $row[0];
$apercu = $row[1];
$desc = $row[2];
echo "<tr>\n
<td>$identification</td>\n
<td>". Lootup($apercu) ."</td>\n
<td>$desc</td>\n
</tr>\n";

}



?>

</tr>

</table>

je ne sais pas quel autre code vous avez besoin hmm

Hors ligne

 

#9 10-09-2008 08:16:27

lolo3129
Membre
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 566
Site web

Re: aficher une image en fonction d'un chiffre

celui de la fonction lootup et le code source de la page générée

Hors ligne

 

#10 10-09-2008 08:26:52

damda58
Membre
Date d'inscription: 07-09-2008
Messages: 9

Re: aficher une image en fonction d'un chiffre

alors la fonction lootup

Code:

function readUrl($url) {       
    // Try cURL first. If that isn't available, check if we're allowed to
   // use fopen on URLs.  If that doesn't work, just die.
   if (function_exists('curl_init')) {
      $ch = @curl_init($url);
      @curl_setopt($ch, CURLOPT_TIMEOUT, 30);
      @curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
      @curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
      $html_data = curl_exec($ch);
      @curl_close($ch);
   }
   else if (ini_get('allow_url_fopen') == 1) {
       // Envoie une requête HTTP à www.example.com
       // avec des en-têtes supplémentaires
       $html_data = @file_get_contents($url);
   }
   else {
        // Thanks to Aki Uusitalo
      $url_array = parse_url($url);

      $fp = fsockopen($url_array['host'], 80, $errno, $errstr, 5);

      if (!fp)
        {
         die("cURL isn't installed, 'allow_url_fopen' isn't set and socket opening failed. Socket failed because: <br /><br /> $errstr ($errno)");
        }
        else {
         $out = "GET " . $url_array[path] . "?" . $url_array[query] ." HTTP/1.0\r\n";
         $out .= "Host: " . $url_array[host] . " \r\n";
         $out .= "Connection: Close\r\n\r\n";

         fwrite($fp, $out);

         // Get rid of the HTTP headers
         while ($fp && !feof($fp)) {
            $headerbuffer = fgets($fp, 1024);
            if (urlencode($headerbuffer) == "%0D%0A") {
               // We've reached the end of the headers
               break;
            }
         }

         $html_data = '';
         // Read the raw data from the socket in 1kb chunks
         // Hopefully, it's just HTML.
         while (!feof($fp)) {
            $html_data .= fgets($fp, 1024);
         }
         fclose($fp);
      }       
    }
   return $html_data;
} 


function Lootup($txt) {
    // variable statique permettant d'éviter plusieurs fois l'appel à Lootup dans la même page
    static $result;
    if (!isset($result))
       $result=array();
    if (!isset($result[$txt]))
      $result[$txt] = readUrl("http://www.lootup.com/loot.php?obj=".$txt);
    echo $result[$txt];
}

Le code de ma page php

Code:

<?php
include ('haut.php');
mysql_select_db($site_woo);
?>
<link rel='stylesheet' type='text/css' href='../scripts/defautcss.css'>
<script src="scripts/popup.js" type="text/javascript"></script>
<body>




<table border="1" cellpadding="0" cellspacing="0">

<tr>

<th>Identification</th>

<th>Apercu</th>

<th>Description</th>

</tr>
<?php
// Creation et envoi de la requete
$query = "SELECT item_name,id_item, prix FROM wow_item" ;

$result = mysql_query($query);

// Recuperation des resultats
while($row = mysql_fetch_row($result)){
$identification = $row[0];
$apercu = $row[1];
$desc = $row[2];
echo "<tr>\n
<td>$identification</td>\n
<td>". Lootup($apercu) ."</td>\n
<td>$desc</td>\n
</tr>\n";

}



?>

</tr>

</table>

</body>

</html>

<?php
include ('bas.php');
?>

Hors ligne

 

#11 10-09-2008 09:56:46

lolo3129
Membre
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 566
Site web

Re: aficher une image en fonction d'un chiffre

ok, je pensais plus au code html généré de la page posant problème.

au passage, si le include après le </html> émet du html, c'est pas top, ce sera mal interprété par les navigateurs.

Hors ligne

 

#12 10-09-2008 10:35:58

damda58
Membre
Date d'inscription: 07-09-2008
Messages: 9

Re: aficher une image en fonction d'un chiffre

voila le code généré par firefox (affichage source)

Code:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>site</title>
<link href="style/woo.css" rel="stylesheet" type="text/css" />

<link rel="shortcut icon" href="images/wow.ico">
</head>

<body><div id="bg"></div><br />

<div id="subheader">
        
    <div class="news">
        <center><center><b><u>Musique</b></u></center><object type="application/x-shockwave-flash" data="music/player_mp3.swf" width="150" height="20"><param name="movie" value="player_mp3.swf" /><param name="bgcolor" value="#000000" /><param name="FlashVars" value="mp3=music/1.mp3&amp;loop=1&amp;autoplay=0&amp;volume=100" /></object></center></div>
    <div class="news2"><center><b>


Il y a 1 visiteur(s) <br>sur le site !</b></center></div>

    <div class="search">
        <center><b><u>STATUT : 


<font color=red><u><b>Offline</u></b></font></b></u><br><br><u>Joueur(s) online :</u> <font color=green>0</font></center></div>
</div>
<div id="MENU">
<!-- VOUS DEVEZ COPIER CETTE BALISE POUR AJOUTER UNE CATEGORIE DE MENU : ***<div class="fenetre">CONTENU</div>*** -->
<div class="fenetre">
<img src="images/top_menu.gif" alt="" width="150" height="45" /><div class="liens">
        <!-- VOUS DEVEZ COPIER CETTE BALISE POUR AJOUTER UN BOUTON AU MENU : ***<div class="bouton">PLACEZ LE LIEN</div>*** -->
        <div class="bouton"><center><u><b>Général :</b></u></center></div>

        <div class="bouton"><a href="index.php">Index</a></div>
                 <div class="bouton"><a href="chatbox.php">La Chatbox</a></div>
        <div class="bouton"><a href="statistique.php">Stats & Infos</a></div>
        <div class="bouton"><a href="top.php">Tableau des Votant</a></div>
        <div class="bouton"><a href="boutique.php">Liste item</a></div>
</div>

<div class="fenetre">
<img src="images/top_menu.gif" alt="" width="150" height="45" /><div class="liens">
        <!-- VOUS DEVEZ COPIER CETTE BALISE POUR AJOUTER UN BOUTON AU MENU : ***<div class="bouton">PLACEZ LE LIEN</div>*** -->
        <div class="bouton"><center><u><b>Compte :</b></u></center></div>
        <div class="bouton"><a href="inscription.php">Céation de Compte</a></div>
        <div class="bouton"><a href="nous_rejoindre.php">Nous Rejoindre</a></div>
        

<div class="bouton"><a href="membre.php">Gerer mon Compte</a></div>
<div class="bouton"><a href="/item.php?deconnexion" class="deconnexion">Deconnexion</a></div>

            

            
</div>
</div>
<div class="fenetre">
<img src="images/top_menu.gif" alt="" width="150" height="45" /><div class="liens">
        <!-- VOUS DEVEZ COPIER CETTE BALISE POUR AJOUTER UN BOUTON AU MENU : ***<div class="bouton">PLACEZ LE LIEN</div>*** -->
        <div class="bouton"><center><u><b>Interactif :</b></u></center></div>
        <div class="bouton"><a href="map/pomm.php" onclick="window.open('map/pomm.php', 'photo', 'height=600, width=815, top=100, left=100, toolbar=no, menubar=yes, location=no, resizable=yes, scrollbars=no, status=no'); return false;"> Carte des Joueurs</a></div>
        <div class="bouton"><a href="armuerie.php">Armuerie</a></div>

        <div class="bouton"><a href="guildes.php">Guildes du Serveur</a></div>
        <div class="bouton"><a href="gamers.php">Liste des Persos</a></div>
        <div class="bouton"><a href="player.php">Joueurs connèctés</a></div>
</div>
</div>
<img src="images/foot_menu.gif" alt="" width="150" height="20" />

<div class="fenetre" style="margin-top:30px;">
<img src="images/top_menu.gif" alt="" width="150" height="45" />
<div class="liens">
<div class="menu_content"><br><center><font color=#e32d3a><u>Informations :</u></font></center><br></center>

<center><font color=#e32d3a>Statut :</font> 


<font color=red><u><b>Offline</u></b></font><br /></center><br>
<center><font color=#e32d3a>Joueurs online : 0</font><br /></center>
<center><font color=#e32d3a>MJ online : 0</font><br /></center>
<center><font color=#e32d3a>Admin online : 0</font><br><br><br></center>
</div>
</div><img src="images/foot_menu.gif" alt="" width="150" height="20" />


</div>
</div>
</div>

<div class="bgcontent">
<div class="content">



<link rel='stylesheet' type='text/css' href='../scripts/defautcss.css'>
<script src="../scripts/popup.js" type="text/javascript"></script>
<body>




<table border="1" cellpadding="0" cellspacing="0">

<tr>

<th>Identification</th>

<th>Apercu</th>

<th>Description</th>

</tr>

aparement il manque toute la suite en php sad pour afficher les items je ne sais pas d'ou cela peut venir

Hors ligne

 

#13 10-09-2008 11:58:52

lolo3129
Membre
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 566
Site web

Re: aficher une image en fonction d'un chiffre

probablement un problème dans la requête SQL.

Code:

mysql_query($query) or die(mysql_error());

Hors ligne

 

#14 10-09-2008 11:59:55

lolo3129
Membre
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 566
Site web

Re: aficher une image en fonction d'un chiffre

"desc" est un mot clé réservé pour mysql. autant changer le nom de la colonne, ou bien utiliser le caratère ` autour de ce nom

Hors ligne

 

#15 10-09-2008 14:41:04

damda58
Membre
Date d'inscription: 07-09-2008
Messages: 9

Re: aficher une image en fonction d'un chiffre

j'ai changé les 'desc' en 'description' mais rien n'y fait sad je vois mon tableau vide comment puis-je faire ? qu'est ce qu'il faudrait pour que vous puissiez m'aidez?
encore merci

Hors ligne