Page 1 sur 1

Affichage img sql

Posté : 28 août 2012, 22:50
par orell1
Bonjour à tous,
j'ai voulu réutiliser ce script http://dev.victorstanciu.ro/experimente ... /#examples pour afficher les logos contenus dans ma base sql mais rien ne fonctionne comme je le souhaite...
En fait les logos s'affichent bien mais sont tous supperposés au lieu d'être en carrousel comme sur l'exemple...
Est-ce à cause de ma jointure sql???
Si quelqu'un a une idée...?

Merci par avance.

Voici le script que j'ai modifié...
<link rel="stylesheet" type="text/css" href="js/logos_home/showcase.css" />
	<script type="text/javascript" src="js/logos_home/prototype.js"></script>
	<script type="text/javascript" src="js/logos_home/effects.js"></script>
	<script type="text/javascript" src="js/logos_home/showcase.js"></script>
<?php
	$conn = db_connect();
  	$sql = "SELECT logo, site_internet ,nom_entreprise 
	FROM fournisseurs_entreprises_coordonnees
	LEFT JOIN  fournisseurs_entreprises_dossiers ON fournisseurs_entreprises_dossiers.num_client=fournisseurs_entreprises_coordonnees.num_client 
	WHERE logo IS NOT NULL 
	ORDER BY logo DESC
	LIMIT 10";
  	$result = mysql_query($sql, $conn);
?>

<body>	
	<div class="showcase" id="horizontal">
		<a href="#previous" class="controls previous" rel="previous">&ndash;</a>
		<a href="#next" class="controls next" rel="next">+</a>
		<ul>
        <?php while ($dossier = mysql_fetch_array($result)) { ?>
			<li><a href="<?php echo htmlentities($dossier[site_internet]); ?>" title="<?php echo htmlentities($dossier[nom_entreprise]); ?>"><img src="<?php echo $dossier[logo]; ?>" alt="Logo" title="<?php echo htmlentities($dossier[site_internet]); ?>"/></a></li>
			
            <?php } ?>
		</ul>
	</div>	
	<script type="text/javascript">
		document.observe('dom:loaded', function () {
			new Showcase.Horizontal($$('#horizontal ul li'), $$('#horizontal a.controls'), {duration: 0.3});
			});
	</script>
    </body>

Et ça c'est le script de base :
<!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>
	<title>Prototype extension: Showcase | Horizontal example</title>	
	<link rel="stylesheet" type="text/css" href="showcase.css" />
	<script type="text/javascript" src="prototype.js"></script>
	<script type="text/javascript" src="effects.js"></script>
	<script type="text/javascript" src="showcase.js"></script>
</head>
<body>	
	<div class="showcase" id="horizontal">
		<a href="#previous" class="controls previous" rel="previous">&ndash;</a>
		<a href="#next" class="controls next" rel="next">+</a>
		<ul>
			<li><a href="#" title="Slide 1"><img src="images/1.jpg" alt="1" /></a></li>
			<li><a href="#" title="Slide 2"><img src="images/2.jpg" alt="2" /></a></li>
			<li><a href="#" title="Slide 3"><img src="images/3.jpg" alt="3" /></a></li>
			<li><a href="#" title="Slide 4"><img src="images/4.jpg" alt="4" /></a></li>
			<li><a href="#" title="Slide 5"><img src="images/5.jpg" alt="5" /></a></li>
			<li><a href="#" title="Slide 6"><img src="images/6.jpg" alt="6" /></a></li>
			<li><a href="#" title="Slide 7"><img src="images/7.jpg" alt="7" /></a></li>
		</ul>
	</div>	
	<script type="text/javascript">
		document.observe('dom:loaded', function () {
			new Showcase.Horizontal($$('#horizontal ul li'), $$('#horizontal a.controls'), {duration: 0.3});
			});
	</script>
</body>
</html>

Re: Affichage img sql

Posté : 28 août 2012, 23:17
par orell1
J'ai l'impression que ça vient du LIMIT dans le SELECT car lorsque je le retire ça fonctionne... Le problème c'est que je souhaite limiter le nombre d'affichage...

Re: Affichage img sql

Posté : 29 août 2012, 07:47
par schim59
Bonjour,
J'ai pas le temps de regarder le code en détail, mais tu peut remplacer le "LIMIT" par une boucle "FOR".

Re: Affichage img sql

Posté : 29 août 2012, 08:11
par orell1
Merci pour ta réponse.
Je vais regarder comment construire cette nouvelle hypothèse.

Merci beaucoup!

Re: Affichage img sql

Posté : 29 août 2012, 08:14
par Mazarini
Il faudrait comparer le résultat du script modifié avec le script original pour voir s'il y a une différence.

Re: Affichage img sql

Posté : 29 août 2012, 08:19
par orell1
Il y a les deux script au dessus si tu as le courage de jeter un oeil...?
Le script original charge des images depuis un dossier serveur...
Mes modifications permettent de charger les images depuis la base sql... Problème si je mets un LIMIT dans le SQL les images ne s'affichent pas... Si je le retire toutes les images s'affichent.... Mais ce n'est pas ce que je souhaite...

A l'origine je voulais afficher aléatoirement 20 logos... j'avais utilisé dans le SELECT ORDER BY RAND() LIMIT 20 mais idem ça ne fonctionne pas...

Re: Affichage img sql

Posté : 29 août 2012, 09:04
par xTG
Et donc tu nous dis que sans le LIMIT la requête fonctionne et que tu as des images ?
Tentes donc de regarder ce que retourne mysql_error() et mysql_num_rows() alors.

Re: Affichage img sql

Posté : 29 août 2012, 09:28
par Mazarini
Il y a les deux script au dessus si tu as le courage de jeter un oeil...?
...
Justement non, c'est pour ca que je te conseille de regarder le source de ta page généré pour le contrôler.

La première chose à vérifier, c'est de vérifier que tu as bien générer le html que tu souhaites. Je ne vois pas d'erreur dans le php, mais regarder le résultat est beaucoup plus simple.

Re: Affichage img sql

Posté : 29 août 2012, 09:40
par orell1
En fait le script de base affiche normalement les images...
Mon script version php affiche lui aussi les logos mais ils sont tous superposés ...

Re: Affichage img sql

Posté : 29 août 2012, 12:23
par moogli
est tu certain que le fichier css est bien chargé ?

la balise img n'a pas de propriété title, docn a virer.

comme te l'indique Mazarini regarde le code source générer pour voir s'il n'y a pas une merde dedans, on ne peu pas deviner ce qu'il y a dans ta base !


tu peux aussi utiliser l'extension developper de chrome pour t'aider (ou autre plugins de chrome / firefox, ou équivalent d'autre navigateur qui embarque presque tous ce type de chose).


@+