Page 1 sur 1

affichage d'images sélectionnées au hasard

Posté : 06 nov. 2005, 16:48
par yuuzhantar
bonjour

j'ai une page qui affiche des images au hasard sélectionnée dans une base de données mysql

une partie du style de la page aussi est pris dans une table

voici mon code
<?
mysql_connect('sql.free.fr','xxx','xxx');
mysql_select_db('yuu_sw');
mysql_fetch_assoc(mysql_query("SELECT ban_id, user_id, ban_fond, ban_color, ban_color2, ban_credits, ban_affichage FROM a_ban WHERE ban_id='$frame_id'"));

$id1 = $resultats['ban_id'];
$id2 = $resultats['user_id'];
$fond = $resultats['ban_fond'];
$color = $resultats['ban_color'];
$color2 = $resultats['ban_color2'];
$credits1 = $resultats['ban_credits'];
$affiche = $resultats['ban_affichage'];

mysql_close();
?>

<?
mysql_connect('sql.free.fr','xxx','xxx');
mysql_select_db('yuu_sw');
$init = mysql_query("DELETE FROM a_ban_active");
$init2 = mysql_query("ALTER TABLE a_ban_active AUTO_INCREMENT=0");
$active = mysql_query("SELECT ban_id, user_id FROM a_ban WHERE ban_credits>0 AND ban_id!=$frame_id");
while($insert = mysql_fetch_assoc($active))
{
$sql="INSERT INTO a_ban_active VALUES('',".$insert['user_id'].",".$insert['ban_id'].")"; 
mysql_query($sql); 
}
mysql_close();
?>

<?
mysql_connect('sql.free.fr','xxx','xxx');
mysql_select_db('yuu_sw');
$compter = mysql_num_rows(mysql_query("SELECT active_id FROM a_ban_active"));
$nombre = $compter;
$rand = mt_rand(0,$nombre);

$resultat_active = mysql_fetch_assoc(mysql_query("SELECT ban_id FROM a_ban_active WHERE active_id='$rand'"));
$ban_id_active = '$resultat_active';

$emp = mysql_fetch_assoc(mysql_query("SELECT ban_id, ban_emp, ban_lien, ban_credits, ban_affiche FROM a_ban WHERE ban_id='$ban_id_active'"));

$id3 = $emp['ban_id'];
$ban_emp = $emp['ban_emp'];
$ban_lien = $emp['ban_lien'];
$credits2 = $emp['ban_credits'];
$affiche = $emp['ban_affiche'];

mysql_close();
?>
<?
$new_credits1 = $credits1+1;
$new_credits2 = $credits2-1;
$new_affichage = $affichage+1;
$new_affiche = $affiche+1;

mysql_connect('sql.free.fr','xxx','xxx');
mysql_select_db('yuu_sw');
mysql_query("UPDATE a_ban SET ban_credits='$new_credits1' WHERE ban_id='$id1'");
mysql_query("UPDATE a_ban SET ban_credits='$new_credits2' WHERE ban_id='$id3'");
mysql_query("UPDATE a_ban SET ban_affiche='$new_affiche' WHERE ban_id='$id3'");
mysql_query("UPDATE a_ban SET ban_affichage='$new_affichage' WHERE ban_id='$id1'");

mysql_close();
?>
<STYLE TYPE=text/css>
A.menulink {
font-family:Verdana;
font-size:10px;
color: #<? echo "$color"; ?>
text-decoration: none;
}

.texte       { font-family: Verdana; font-size: 10 px }
A.menulink:hover {
color: #<? echo "$color2"; ?>
font-style: bold;
text-decoration: none;
}
body {
	margin-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
}
</STYLE>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>

<body>
<table width="468" height="90" border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td height="60"><a href="<? echo $ban_lien; ?>" target="_blank"><img src="<? echo $ban_emp; ?>" width="468" height="60" border="0" align="absbottom"></a></td>
  </tr>
  <tr>
    <td height="27" align="center" valign="middle"><a href="http://www.banniere-echange.fr.tc" target="_blank" class="menulink"><strong>Banni&egrave;re-echange.fr.tc, service gratuit d'&eacute;change de banni&egrave;res ratio 1:1, rentabilisez votre site en augmentant le nombre de visiteurs, publicit&eacute; gratuite </strong></a></td>
  </tr>
</table>
sa ne me met aucune erreur du genre unexpected machin ...

mais sa n'affiche rien du tout, à la place de l'image, il y a une croix ... sa n'actualise pas le nombre d'affichages ...

qu'est ce qui ne vas pas ???

Posté : 06 nov. 2005, 16:53
par Vaedan
Surement une parse error ou une notice ...
Sans le message d'erreur ça va être dur de t'aider plus !

Posté : 06 nov. 2005, 17:02
par the_grinch
si il y a une croix en haut a gauche de ton image avec un fond blanc ou autre c'est que c'est tes images qui deconne ou alors le chemin de tes images !

Posté : 06 nov. 2005, 17:26
par yuuzhantar
nan ce n'est pas l'image, sa doit venir de la requête

a la fin de la page j'ai mis un petit code tout simple
<?
echo "<p>id1= $id1</p>";
echo "<p>id2= $id2</p>";
echo "<p>id3= $id3</p>";
echo "<p>fond= $fond</p>";
echo "<p>color= $color</p>";
echo "<p>color2= $color2</p>";
echo "<p>credits1= $credits1</p>";
echo "<p>credits2= $credits2</p>";
echo "<p>affiche= $affiche</p>";
echo "<p>rand= $rand</p>";
echo "<p>ban_emp= $ban_emp</p>";
echo "<p>ban_lien= $ban_lien</p>";
echo "<p>affichage= $affichage</p>";
echo "<p>newcredits1= $new_credits1</p>"; 
echo "<p>newcredits2= $new_credits2</p>"; 
echo "<p>newaffiche= $new_affiche</p>"; 
echo "<p>newaffichage= $new_affichage</p>"; 

 
?>


et sa me donne à l'écran
id1=

id2=

id3=

fond=

color=

color2=

credits1=

credits2=

affiche=

rand= 0

ban_emp=

ban_lien=

affichage=

newcredits1= 1

newcredits2= -1

newaffiche= 1

newaffichage= 1

est ce que sa vien du fait que les premières requêtes soit entre head et /head ???

cf code

Posté : 07 nov. 2005, 14:53
par sadjiro
lol j'ai pas tout lu car c'était trop long ^^

mais j'ai lu le plus intéressant.

Moi je te conseillerai d'essayer avec cette méthode :

Code : Tout sélectionner

$requete = mysql_query("SELECT ban_id, user_id, ban_fond, ban_color, ban_color2, ban_credits, ban_affichage FROM a_ban WHERE ban_id='$frame_id'"); while ($recupdonnees = mysql_fetch_array($requete)) { echo $recupdonnees['ban_id']; }
etc...

et vérifie bien tes images :).

Au pire ce que tu fais pour tester tes images tu remet ton code et tu définis l'id d'une image en particulier :)

voilou :wink: