Problème affichage image

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème affichage image

Re: Problème affichage image

par orell1 » 28 oct. 2010, 01:42

yes! Merci beaucoup j'avais mal compris... :?
Bonne fin de soirée.

Re: Problème affichage image

par stealth35 » 28 oct. 2010, 01:33

donc c'est ok pour faire la requête complète :wink:

Re: Problème affichage image

par orell1 » 28 oct. 2010, 01:31

Oui ça c'est ok.
Je sais désormais le faire correctement.

Re: Problème affichage image

par stealth35 » 28 oct. 2010, 01:25

AH tu parles de ça: ($sql, $conn) ???
non de ca : LEFT JOIN

Re: Problème affichage image

par orell1 » 28 oct. 2010, 01:22

AH tu parles de ça: ($sql, $conn) ???

Re: Problème affichage image

par stealth35 » 28 oct. 2010, 01:19

C'est bien ce qui me semblait mais je ne sais pas joindre les deux... :(
pourtant tu le fait dans la premier requete

Re: Problème affichage image

par orell1 » 28 oct. 2010, 01:16

C'est bien ce qui me semblait mais je ne sais pas joindre les deux... :(

Re: Problème affichage image

par stealth35 » 28 oct. 2010, 01:01

en fait y'en a une qui gère le while : $resultat = mysql_query($sql, $conn);
et l'autre : $active = mysql_fetch_array($result);
il te manque un while alors, d'ailleur tu peux faire tout ca en 1 seule requete

Re: Problème affichage image

par orell1 » 28 oct. 2010, 00:48

en fait y'en a une qui gère le while : $resultat = mysql_query($sql, $conn);
et l'autre : $active = mysql_fetch_array($result);

Re: Problème affichage image

par stealth35 » 28 oct. 2010, 00:43

pourquoi tu fait 2 mysql_query pour t'a première requête ?

Re: Problème affichage image

par orell1 » 28 oct. 2010, 00:37

C'est ok!

Sur tes conseils j'ai relu tout le code et j'ai fait une jointure...
Tout fonctionne à merveille!
Merci pour ce précieux coup de main!

voici mon code final :
<?php
	$conn = db_connect();
  	$sql = "SELECT * 
	FROM  entreprises_coordonnees
	LEFT JOIN pefac_entreprises_dossiers ON entreprises_dossiers.num_client=entreprises_coordonnees.num_client
	WHERE activite like '%".$activite."%' AND code_postal like '%".$code_postal."%' AND mots_cles like '%".$mots_cles."%' AND mots_cles_option like         '%".$mots_cles_option."%'"; 
	$resultat = mysql_query($sql, $conn);
  	$result = mysql_query($sql, $conn);
	
  	
  		//---------------------------------- rechercher la date limite --------------------------------
  		$active = mysql_fetch_array($result);
  		$conn = db_connect();
  		$rech_sql = "SELECT * FROM ".ENTREPRISES_DOSSIERS." WHERE num_client = '$active[num_client]'"; 
  		$resultat_rech = mysql_query($rech_sql, $conn);
  		$rech_date = mysql_fetch_array($resultat_rech);	
		
		//---------------------------------------------------------------------------------------------
	
  	if ($rech_date[date_limite] >= time()) {
  	
	  	echo "<div style='overflow: scroll; border: #000000 0px solid; height: 800px; margin-left: 5px; margin-right: 5px;'><ul>"; 
	  	
	  	while ($active = mysql_fetch_array($resultat)) {
		
	  		echo '<li><a href=\'afficher_fournisseur.php?nom_entreprise='.stripslashes(mb_strtoupper($active[nom_entreprise])).'\'>'.mb_strtoupper($active[nom_entreprise]).'</a><br>';
	  		echo '<font size="2"><b> Code Postal :</b> ' .stripslashes($active[code_postal]).'</font>'.'<br>';
			echo "<img src=\"$active[logo]\" alt=\"\" width=\'150px\';  />";
						//echo $active[ville]."&nbsp;&nbsp;";
	  		echo '<font size="2"><b>Activité(s) :</b> ' .stripslashes($active[activite]).'</font>'.'<br><br>';
			echo '<a href=\'afficher_fournisseur.php?nom_entreprise='.stripslashes(mb_strtoupper($active[nom_entreprise])).'\'><img src="http://www.site.com/images/acces_fiche.png"  alt="Accéder à la fiche" height="25" align="absmiddle" />&nbsp; '.'</li>'.'<hr>';
	  	
		  }
	  	
	  	echo "</ul></div>  ";
	}
  	else {
  		echo "Aucun r&eacute;sultat trouv&eacute; !";
  	}
?>

Re: Problème affichage image

par orell1 » 27 oct. 2010, 22:56

Bon je viens d'essayer de faire la jointure mais j'ai beaucoup de mal à faire cette jointure avec la boucle... je pense que cela ne fonctionne pas car je n'inclus pas dans cette boucle ma jointure... ce qui fait que j'ai toujours le même message d'erreur (message envoyé par ma boucle) "Aucun résultat trouvé !"
Le problèque c'est que je ne sais pas comment faire la...
Je suis complétement bloqué... :cry:

Voici ma modification :
<?php
	$conn = db_connect();
  	$sql = "SELECT * 
	FROM entreprises_coordonnees
	LEFT JOIN entreprises_dossiers ON entreprises_dossiers.num_client=entreprises_coordonnees.num_client
	WHERE activite like '%".$activite."%' AND code_postal like '%".$code_postal."%' AND mots_cles like '%".$mots_cles."%' AND mots_cles_option like '%".$mots_cles_option."%' AND '$logo=[logo]'"; 
  	$req = mysql_query($sql) or die (mysql_error ());
	$data=mysql_fetch_array($req);
	$resultat = mysql_query($sql, $conn);
  	$result = mysql_query($sql, $conn);
	
  	
  		//---------------------------------- rechercher la date limite --------------------------------
  		$active = mysql_fetch_array($result);
  		$conn = db_connect();
  		$rech_sql = "SELECT * FROM ".ENTREPRISES_DOSSIERS." WHERE num_client = '$active[num_client]'"; 
  		$resultat_rech = mysql_query($rech_sql, $conn);
  		$rech_date = mysql_fetch_array($resultat_rech);	
		
  		//---------------------------------------------------------------------------------------------
	
  	if ($rech_date[date_limite] >= time()) {
  	
	  	echo "<div style='overflow: scroll; border: #000000 0px solid; height: 800px; margin-left: 5px; margin-right: 5px;'><ul>"; 
	  	
	  	while ($active = mysql_fetch_array($resultat)) {
		
	  		echo '<li><a href=\'afficher_fournisseur.php?nom_entreprise='.stripslashes(mb_strtoupper($active[nom_entreprise])).'\'>'.mb_strtoupper($active[nom_entreprise]).'</a><br>';
	  		echo '<font size="2"><b> Code Postal :</b> ' .stripslashes($active[code_postal]).'</font>'.'<br>';
			echo "<img src=\"$data[logo]\" alt=\"\" width=\'150px\';  />";
						//echo $active[ville]."&nbsp;&nbsp;";
	  		echo '<font size="2"><b>Activité(s) :</b> ' .stripslashes($active[activite]).'</font>'.'<br><br>';
			echo '<a href=\'afficher_fournisseur.php?nom_entreprise='.stripslashes(mb_strtoupper($active[nom_entreprise])).'\'><img src="http://www.site.com/images/acces_fiche.png"  alt="Accéder à la fiche" height="25" align="absmiddle" />&nbsp; '.'</li>'.'<hr>';
	
	  	
		  }
	  	
	  	echo "</ul></div>  ";
	}
  	else {
  		echo "Aucun r&eacute;sultat trouv&eacute; !";
  	}
?>

Re: Problème affichage image

par xTG » 27 oct. 2010, 22:12

Je parle bien de faire une jointure.
Tu récupères une liste d'entreprises et dans une seconde requête tu récupères toutes les entreprises et leurs données.
Et tu fais une boucle sur la première requête en voulant afficher l'enregistrement correspondant de l'autre requête...
Bref on réunit les deux et on n'en parle plus. ^_-

Re: Problème affichage image

par orell1 » 27 oct. 2010, 20:48

De faire une jointure avec la première connexion à la base c'est ça?

autrement dit celle-ci ?
$conn = db_connect();
        $sql = "SELECT * FROM ".ENTREPRISES_COORDONNEES." WHERE activite like '%".$activite."%' AND code_postal like '%".$code_postal."%' AND mots_cles like '%".$mots_cles."%' AND mots_cles_option like '%".$mots_cles_option."%'";
        $resultat = mysql_query($sql, $conn);
        $result = mysql_query($sql, $conn);
Quand tu parles de ma boucle tu parles bien de "if" et "while"? Si c'est le cas comment faire une seule boucle avec ces deux éléments ?

Merci Vraiment! :D

Re: Problème affichage image

par xTG » 27 oct. 2010, 20:33

Ton erreur vient du fait que ta boucle n'est pas en relation avec les informations de l'entreprise.
Pourquoi ne pas mettre la troisième requête dans la première ?