Page 1 sur 2

problème d affichage avec mon code php !

Posté : 08 mars 2005, 18:17
par jul
Bonjour à tous,
Yé suis nouveau et yé oune problème dé code dans mon php !
j aimerai faire afficher deux img et du texte mais je n y parvient pas.
je devrais avoir une img de rubrique puis du texte et des imgs mais il me les met dans le desordre et ne me les affiche carrément pas du tout !
c à dire qu il me met une img puis l img de la rubrique puis une otre img sans me mettre le texte au milieu... c difficile à expliquer pour un jeune padawan mais j esper que quelqu un comprendra !
Merci d'avance car je suis dans la mouise !
:oops:
<?
$query=mysql_query("SELECT * FROM news2 WHERE '1'");
?> 
<table width="200" height="0" border="0" align="center">
  <tr> 
    <td height="27" valign="top"><img src="images/rubriques.jpg" width="102" height="25"></td>
  </tr>
  <tr>
     <div align="left" class="Style9 Style1">
	   <? 
	  echo "".$a['text_fr']."<br>";
	  echo "<a href=\"$url\">$lien</a>";
	  ?>
	  </div>
	  </tr>
  <tr>
  <td valign="top" height="18"> 
   <?
  while($a=mysql_fetch_array($query))  {
  $img="".$a['img']."";
  echo "<img src=\"images/img_divers/gif_anim/soujazz_anim.gif/rewind_anim.gif/$img\">";
   ?>
	  </td>
  </tr>
  <?
  }
  ?>
  <tr> 
    <td>
	</td>
  </tr>
  <tr> 
    <td>&nbsp;</td>
  </tr>
  <tr> 
    <td>
	</td>
  </tr>
</table>

Posté : 08 mars 2005, 18:56
par Cyrano
Il y a des chevauchements curieux dans ton code... essaye comme ça et dis nous ce qui marche pas si tu as encore des errreurs d'affichage...
<?
$query=mysql_query("SELECT * FROM news2 WHERE '1'");
?>
<table width="200" height="0" border="0" align="center">
  <tr>
    <td height="27" valign="top"><img src="images/rubriques.jpg" width="102" height="25"></td>
  </tr>
  <tr>
     <div align="left" class="Style9 Style1">
       <?
       echo "".$a['text_fr']."<br>";
       echo "<a href=\"$url\">$lien</a>";
      ?>
      </div>
  </tr>
   <?
   while($a=mysql_fetch_array($query))
   {
?>
  <tr>
  	<td valign="top" height="18">
   <?
   		$img="".$a['img']."";
   		echo "<img src=\"images/img_divers/gif_anim/soujazz_anim.gif/rewind_anim.gif/$img\">";
   ?>
    </td>
  </tr>
<?
   }
?>
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
Bon code :)

c pas encore ca !

Posté : 08 mars 2005, 20:23
par jul
Salut cyrano,

Je te remercie pour ta promptitude !
Ton code est effectivement mieux que le miens car il m a remis les elements en ordre mais il y toujours un probleme.
c le suivant: j ai une img qui est en haut pour la rubrique qui elle s affiche.
Mais j ai normalement du texte ensuite qui est suivit d une img gif puis encore du texte et encore une img gif qui elles ne s affichent pas... le texte non plus ! c la que je ne comprends pas... ca doit donc etre un probleme de chemin d acces alors??

Merci d avance !

Posté : 09 mars 2005, 10:13
par Cyrano
C'est effectivement très probablement un problème d'adresse relatives/absolues. Ce qu'il faut que tu vérifies, c'est que lorsque tu affiches ta page dans ton navigateur, édite le code généré et inspecte les adresses de fichier (Alt+A puis S dans IE ou Ctrl+U dans Firefox) Tu vas trouver rapidement l'erreur.
Petit conseil (pour ce qu'il vaut): pour ma part, quand je veux construire une page dynamique avec PHP, la première chose que je vais faire, c'est de construire le résultat voulu en HTML: ce résultat lorsqu'il est satisfaisant me sert de source de morceaux de codes dont je me sers avec les modules dynamiques et je remplace les contenu "en dur" par des insertions par des variables si nécessaire. Les seules grosses erreurs qu'il me reste alors à traiter, ce sont les erreurs de variables ou encore erreurs de programmation qui n'envoient pas le bon contenu, mais l'affichage n'est plus vraiment affecté et je ne traite qu'un seul type de problème de codage : le PHP.
Bon code.

Suite du prob d'affichage !

Posté : 09 mars 2005, 12:24
par jul
Rebonjour,

Ce code ci m affiche tout mais g encore un probleme car il n affiche pas ça dans l ordre ! g le texte puis ensuite l img de la rubrique et ensuite les imgs en gif... bref encore un peut le bordel ! pourtant mon img rubrique est avant le reste dans le code alors pourkoi n apparait elle pas au dessu? Le plus drole c que g une autre page du meme style qui elle s affiche au poil !?! alors comprends pas bien....je sais ke ce n est pas grand chose mais je bute dessu depuis kelkes jours !
please HEEEEEELLLLLPPPPP !!

Merci

[php]
<?
$query=mysql_query("SELECT * FROM news2 WHERE '1'");
?>
<table width="200" border="0" align="center">
<tr>
<td><img src="images/rubriques.jpg" width="102" height="25"></td>
</tr>
<?
while($a=mysql_fetch_array($query)) {
echo "".$a['text_fr']."<br>";
echo "<a href=\"$url\">$lien</a>";
}
?>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td><div align="center"><img src="images/img-divers/gif_anim/rewind_anim.gif" width="120" height="120"></div></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td><div align="center"><img src="images/img-divers/gif_anim/souljazz_anim.gif" width="120" height="120"></div></td>
</tr>
</table>[/php]

Posté : 09 mars 2005, 12:34
par Cyrano
Essaye donc avec ça: je te laisse analyser les différences, il manquait des bouts dans ton code html que PHP ne peut pas corriger....
<table width="200" border="0" align="center">
  <tr>
    <td><img src="images/rubriques.jpg" width="102" height="25"></td>
  </tr>
<?php
$query=mysql_query("SELECT * FROM news2 WHERE '1'");
while($a=mysql_fetch_array($query))
{
?>
  <tr>
    <td>
<?
	echo "".$a['text_fr']."<br>";
	echo "<a href=\"$url\">$lien</a>";
?>

    </td>
  </tr>
<?php
}
?>
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><div align="center"><img src="images/img-divers/gif_anim/rewind_anim.gif" width="120" height="120"></div></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><div align="center"><img src="images/img-divers/gif_anim/souljazz_anim.gif" width="120" height="120"></div></td>
  </tr>
</table>

Suite du prob d'affichage 2 !

Posté : 09 mars 2005, 13:27
par jul
C mieux ! Mais comme tu as pu le voir je fais appel aux imgs en dehors de ma requete alors si je veux y faire appel par la requete faut il ke je rajoute un "echo" apres ceux là :echo "".$a['text_fr']."<br>";
echo "<a href=\"$url\">$lien</a>";

Merci !

[php]
<table width="200" border="0" align="center">
<tr>
<td><img src="images/rubriques.jpg" width="102" height="25"></td>
</tr>
<?
$query=mysql_query("SELECT * FROM news2 WHERE '1'");
while($a=mysql_fetch_array($query))
{
?>
<tr>
<td>
<?
echo "".$a['text_fr']."<br>";
echo "<a href=\"$url\">$lien</a>";
?>
</td>
</tr>
<?
}
?>
<tr>
<td><div align="center"><img src="images/img-divers/gif_anim/souljazz_anim.gif" width="120" height="120"></div></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td><div align="center"><img src="images/img-divers/gif_anim/rewind_anim.gif" width="120" height="120"></div></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
</table>
[/php]

Posté : 09 mars 2005, 13:34
par Cyrano
Je nen sais rien: je ne comprends pas trop bien certains détails: les images que tu utilises en dehors de ta requête ont-elles un lien direct avec les données extraites de la base ? Sinon, qu'est-ce qui t'empêche de les afficher ?
Essaye de préciser en oubliant pas que je ne connais pas ton application et que je ne connais pas toutes les interactions entre les différents parties de ton application... donc il y a des éléments importants qui peuvent me manquer pour te donner une réponse claire et précise.

Suite du prob d'affichage 3 !

Posté : 09 mars 2005, 14:52
par jul
Désolé, j essai d etre le plus clair possible mais c pas toujours facile !
g crée ma table dans laquelle g mis les liens les imgs et le texte comme pour la premiere ki marche tres bien ! Ici le souci c ke l orsque je faisait appel a ma base pour afficher les imgs gif ca me mettait en affichage local une petite case avec une croix rouge ki normalement si je ne suis pas trop bete, veut dire qu il ne trouve pas les imgs... alors ke pourtant les textes entrés dans cette meme table,eux, s affichaient ! Donc de la je ne comprennait pas pourquoi une partie s affiche et pas l otre !?!
Donc par la suite g recommencer avec les imgs en dehors de la requete pour k il gere le texte mais pas les imgs puiske j essaie de les gerer moi meme dans le reste du code ! C pour ca que dans le code ci-joint je demande qu est ce ke je dois rajouter comme commande pour faire afficher ma table nommée "news2" qui fait normalement appel à toutes les choses que je desir voir s affichés(imgs-textes-liens) ?!?
es ce un echo "".$a['img']."<br>"; ??

[php]
<table width="200" border="0" align="center">
<tr>
<td><img src="images/rubriques.jpg" width="102" height="25"></td>
</tr>
<?
$query=mysql_query("SELECT * FROM news2 WHERE '1'");
while($a=mysql_fetch_array($query))
{
?>
<tr>
<td>
<?
echo "".$a['text_fr']."<br>";
echo "<a href=\"$url\">$lien</a>";
?>
</td>
</tr>
<?
}
?>
<tr>
<td><div align="center"><img src="images/img-divers/gif_anim/souljazz_anim.gif" width="120" height="120"></div></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td><div align="center"><img src="images/img-divers/gif_anim/rewind_anim.gif" width="120" height="120"></div></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
</table>
[/php]

Posté : 09 mars 2005, 14:57
par Cyrano
Ok, et je suppose que si tu édites le code qui est affiché dans ton navigateur, tu as le nom de l'image, mais pas le nom du répertoire où elle se trouve:
Donc, au lieu d'écrire :

Code : Tout sélectionner

echo($a['img']);
Essaye en mettant:

Code : Tout sélectionner

echo("images/".$a['img']);
Où "images/" est le répertoire où sont les images.

Suite du prob d'affichage 4 !

Posté : 09 mars 2005, 15:03
par jul
Ok je vais essayer mais entre temps je viens de changer le code et il m affiche enfin tout dans l ordre voulu mais g pas encore les imgs gif ki s affichent ! Ca me met toujours la croix rouge ! donc je sais ke ce n est pas grand chose mais je ne vois pas ce ke c précisement...
je te joint mon dernier code !

[php]
<table width="200" border="0" align="center">
<tr>
<td><img src="images/rubriques.jpg" width="102" height="25"></td>
</tr>
<?
$query=mysql_query("SELECT * FROM news2 WHERE '1'");
while($a=mysql_fetch_array($query))
{
?>
<tr>
<td>
<?
echo "".$a['text_fr']."<br>";
echo "<a href=\"$url\">$lien</a>";
$img="".$a['img']."";
echo "<img src=\"images/img_divers/gif_anim/soujazz_anim.gif/rewind_anim.gif/$img\">";
?>
</td>
</tr>
<?
}
?>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
</table>
[/php]

Suite du prob d'affichage 5 !

Posté : 09 mars 2005, 15:13
par jul
je viens d essayer ton code mais maintenant ca me dit ca :

images/souljazz_anim.gif
Notice: Undefined variable: img in c:\program files\easyphp1-7\www\riddimfactory\monsite\right2.php on line 16

c pas possible c un probleme de chemin dans le code je vois pas ot' chose !?

Posté : 09 mars 2005, 15:37
par Elie
d'où viennent les variables $url et $lien ?
<table width="200" border="0" align="center"> 
<tr> 
<td><img src="images/rubriques.jpg" width="102" height="25"></td> 
</tr> 
<?php

$query = mysql_query("SELECT * FROM news2"); 
while($a=mysql_fetch_array($query)) { 

	echo " <tr>\n";
	echo "  <td>\n";
	
	echo $a['text_fr']."<br /><a href=\"".$url."\">".$lien."</a>"; 
	echo "<img src=\"images/img_divers/gif_anim/soujazz_anim.gif/rewind_anim.gif/".$a['img']."\">"; 
	
	echo " </td>\n";
	echo "  </tr>\n";

	} 
?> 
<tr> 
<td>&nbsp;</td> 
</tr> 
<tr> 
<td>&nbsp;</td> 
</tr> 
</table> 

Posté : 09 mars 2005, 15:39
par Cyrano
Non :

Code : Tout sélectionner

Notice: Undefined variable: img in c:\program files\easyphp1-7\www\riddimfactory\monsite\right2.php on line 16
Ca veut dire que la variable n'est pas initialisée, qu'elle ne contient pas de valeur utilisable: Peut-être que si tu vérifies ton code, tu vas trouver le nom de la variable correspondant à l'image. Je ne sais pas, mais c'est peut-être:

Code : Tout sélectionner

$a['image']
Où "image" est le nom du champ de ta table de BDD qui contient le nom du fichier image...?

Suite du prob d'affichage 6 !

Posté : 09 mars 2005, 15:50
par jul
nan dans ma table j ai: id-type-text_fr-img-url-text_lien !
Donc pour les imgs c est "img" le nom correcte du repertoire !

C est pourkoi ce chemin devrait etre bon :
echo "<img src=\"images/img_divers/gif_anim/soujazz_anim.gif/rewind_anim.gif/$img\">";