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 : affichage image

par artotal » 08 nov. 2006, 18:48

ha ok, je connaissais pas :
je croyais que strictement c'était
===
aucun rapport ave ce post, c'est vrai.

par polo » 08 nov. 2006, 18:36

Désolé, mais je ne vois pas le rapport :-s

Mais le code, que tu a poster, veut dire:
quand $compteur%3 est strictement égal à zéro on fait .....

Mais je ne vois pas vraiment le rapport avec ce sujet ?

par artotal » 08 nov. 2006, 18:14

Pardon mais je ne comprend, l'utilisation du "masque" si s'en est un

Code : Tout sélectionner

if($compteur%3==0)
$compteur est à 0 ?

par polo » 08 nov. 2006, 17:10

bonjour,
Regarde du côté de $i++
et d'un petit if ^^
Clique ici

Le principe:
En gros, au bout de 3 photos, tu dois faire un saut de ligne (par exemple tu peut aussi travailler avec un tableau), donc dans la boucle ou tu génère les image tu insère un $i++, ce qui aura pou effet de faire +1 a la valeur de $i que tu aura préalablement déclaré CF, le lien ci dessus, juste après le { de ta boucle tu doit placer un if, qui dit si jamais $i = 3 hop je fais <br /> je remet $i à zéro (-> en faisant ceci $i = '0';) et le tour est joué :D

Voila :D

par gil83 » 05 nov. 2006, 23:03

effectivement grace a tes commentaires c est deja un peu plus clair... donc un grand merci et aussi pour tes liens

par contre un dernier soucis mon code ne fait ce que je veux
je voulais afficher 3 photos par lignes et la elles sont toutes sur la meme ligne... grrrrrrrrr

apres j embete plus personne promis... lol

par polo » 05 nov. 2006, 19:32

Voila , la solution, mais je t'ai déjà expliqué la manière pour savoir si un boucle est bouclé ou pas!

Bon ce n'est pas grave je recommence :D
//créer le tableau affichage

$compteur=0;
while ($ligne=mysql_fetch_array($result))
{ // début de la boucle
extract($ligne);
 ?>
<table width="90%" border="0" align="center">
<tr>
<?php
$nb_ligne=mysql_num_rows($result);
while ($ligne=mysql_fetch_array($result))
{ // début boucle 2
?>
<td aling="center" width=210><a href="detail.php"><img src="<?php echo $ligne['Photo']; ?>" width= 200 border=0></a></td>
<?php
} // fin boucle 2
if($compteur%3==0) 
{ /* début if -> accolade fonctionnant pareil qu'une boucle, pour chaque { il faut un } */
echo "</TR>".((($nb_ligne+1)!=$compteur)?"<TR>":"");

$compteur++;
} // fin du if
?>

</table>
<?php
} //fin boucle 1
?>
<hr width="90%" size="2" color="#FFFFFF" align="center">
</body>
</html>
Voila normalement ça devrais être juste, et tu n'avais pas une mais deux boucle mal fermées, ps: tu pourrais essayé de ne faire qu'un seul while

Vu que tu est débutant voici quelque liens qui te serons utile:
PHPFrance
Site du zero
PHP débutant

Voila ça devrait t'être utile :D

par gil83 » 05 nov. 2006, 17:11

je suis desole je ne trouve pas, je m enlise de + en + et ca me prend la tete a force... rire jaune

je ne veux la solution bete, j aimerai la solution avec explication pour enfin comprendre...
et desole , je debute et c est pas evident pour moi tout cela

merci

par polo » 05 nov. 2006, 10:00

Bonjour, on peut dire que tu ne te foule pas toi, hein?
exact
mais je dois la mettre ou mon accolade???
thanks
En suivant ton code avec la souris tu aurais pus déjà trouvé qu'il te manqué une accolade, et corriger toi même, quand tu vois quelque par un accolade comme ceci { il doit forcément en avoir une autre comme } ça pour fermer, la boucle.

Donc un peu d'effort, le tout cuit ne t'aidera pas à progresser :D
Si tu n'y arrive vraiment pas je te donnerais la solution, mais ça ne t'aura pas beaucoup aidé.

par Cyrano » 04 nov. 2006, 20:25

gil83, il y a des règles dans ces forums, elles s'appliquent à tous et leur lecture n'est pas optionnelle.

Lorsque tu postes, il y a dans le formulaire de saisie des boutons dédiés pour insérer du code. Tu es invité à les utiliser ainsi qu'à éditer ton message pour corriger la présentation.
J'ajoute que le multipostage est interdit, la copie est partie à la poubelle.

Merci

par gil83 » 04 nov. 2006, 20:21

exact
mais je dois la mettre ou mon accolade???
thanks

par polo » 04 nov. 2006, 19:12

Bonjour, la boucle while n'est pas refermé, il manque donc une } !
Voila :D

par gil83 » 04 nov. 2006, 18:01

merci de ton aide ...
mais j ai une erreur

Parse error: parse error in c:\program files\easyphp1-8\www\contacts\catalogue1.php on line 48


//créer le tableau affichage

$compteur=0;
while ($ligne=mysql_fetch_array($result))
{extract($ligne); ?>


<table width="90%" border="0" align="center">
<tr>
<?php
$nb_ligne=mysql_num_rows($result);
while ($ligne=mysql_fetch_array($result))
{
?>
<td aling="center" width=210><a href="detail.php"><img src="<?php echo $ligne['Photo']; ?>" width= 200 border=0></a></td>
<?php
if($compteur%3==0) {
echo "</TR>".((($nb_ligne+1)!=$compteur)?"<TR>":"");

$compteur++;
}?>

</table><hr width="90%" size="2" color="#FFFFFF" align="center">

</body>
</html>

et la ligne 48 c est ma balise de fin HTML ????????????????

par mankas » 04 nov. 2006, 16:22

tu réflechis un peu et tu te dis que tout les 3 enregistrements tu passes une ligne dans ton tableau au lieu de passer une ligne à CHAQUE enregistrement.
$compteur=0;
?>
<table width="90%" border="0" align="center">
<tr>
<?php
$nb_ligne=mysql_num_rows($result);
while ($ligne=mysql_fetch_array($result))
{
?>
<td aling="center" width=210><a href="detail.php"><img src="<?php echo $ligne['Photo']; ?>" width= 200 border=0></a></td>
<?php
if($compteur%3==0) {
    echo "</TR>".((($nb_ligne+1)!=$compteur)?"<TR>":"");

$compteur++;
}?>

</table><hr width="90%" size="2" color="#FFFFFF" align="center"> 

affichage image

par gil83 » 04 nov. 2006, 13:24

Bonjour a tous
je voudrais afficher sur ma page toutes les photos de base de données contact ... ca marche mais mon tableau cree une nouvelle ligne pour chaque enregistrement.
comment faire pour avoir 3 ou 4 enregistrement par ligne???
merci d avance

voila mon code

<html>
<!-- Date de création: 01/11/2006 -->
<head>
<title></title>

</head>
<body bgcolor="#000000" text="#FFFFFF">

<H3 align="center"><font color = white>Cliquez pour afficher la fiche complete</font></h3>
<?php
$user="root";
$host="localhost";
$password="";
$database="contacts";

$connection=mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");
$db=mysql_select_db($database,$connection) or die ("Sélection de la base de données impossible");

// selectionner toutes les photos presentes dans la table profils
$query="SELECT * FROM profils";
$result= mysql_query($query) or die ("Exécution de la sélection impossible");

//créer le tableau affichage

$compteur=1;
while ($ligne=mysql_fetch_array($result))
{extract($ligne); ?>


<table width="90%" border="0" align="center">
<tr>
<td aling="center" width=210><a href="detail.php"><img src="<?php echo $ligne['Photo']; ?>" width= 200 border=0></a></td>
</tr>
</table><hr width="90%" size="2" color="#FFFFFF" align="center"><?php
$compteur++;
}
?>

</body>
</html>