metre de br tout les deux foto

Eléphanteau du PHP | 47 Messages

14 oct. 2005, 19:15

bonjour voila mon code mais il ne veu pas me mettre un <br> tout les deux images il me met un <br> a chaque images et des qu'il arrive a limage 2 il ne fait que me lafficher
et je veu 2image par ligne et 10 image sur ma page mais si jen est que trois comment éviter qu'il me mette 7 petite etoile pour le completer?
<? 
if ($num  ==  NULL) 
{ 
    $num = 1; 
} 
$num_foto = 3; 
$temoin = 10; 
$plus = 1; 
while ($temoin>$plus) 
{ 
    $affichage = $temoin*$num-$temoin+$plus; 
    echo '<img border = "0" style="margin: 10px" src = "img/'.$affichage.'.jpg" include "'.$affichage.'.php";>';
    if ($affichage=2 or $affichage=4 or $affichage=6 or $affichage=8)
    {
    echo '<br>'; 
    } 
    
    $plus = $plus+1; 
} 
?> 
hIm It'S good music

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

14 oct. 2005, 19:17

Moderation : Fait un effort sur ton langage s'il te plait
Tu as un clavier complet devant toi, pas un clavier de téléphone portable ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 19672 Messages

14 oct. 2005, 19:25

J'ajouterais en regardant ton script que tu vas générer du html bizzare : c'est quoi ce "include" dans la balise <img> ??

Et pour le saut de ligne toutes les deux images, utilise un modulo :
<?php
if ($num  ==  NULL)
{
    $num = 1;
}
$num_foto = 3;
$temoin = 10;
$plus = 1;
while ($temoin > $plus)
{
    $affichage = $temoin * $num - $temoin + $plus;
    $retour = $plus % 2 == 0 ? "<br />" : null;
    echo '<img border = "0" style="margin: 10px" src = "img/'.$affichage.'.jpg" />';
    echo $retour;
    $plus++;
}
?>
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphanteau du PHP | 47 Messages

14 oct. 2005, 20:01

ouai je veut bien faire un modulo mais je c'est pas se que c'est!mon iclude servait a mettre les parametre de mes images!enfin voila et tu peut m'expliquer se que tu a modifier stp merci beaucoup
hIm It'S good music

Mammouth du PHP | 19672 Messages

14 oct. 2005, 20:08

regarde la ligne que j'ai mise : tu vas apprendre deux choses : le modulo et l'opérateur ternaire dans la foulée:
$retour = $plus % 2 == 0 ? "<br />" : null;
Ça, c'est exactement comme si j'avais fait:
if($plus % 2 == 0)
{
    $retour =  "<br />";
}
else
{
    $retour =  null;
}
C'est ce qu'on appelle un opérateur ternaire, le "?" correspond au if : la valeur qui suit sera utilisée si la condition est VRAIE/TRUE: le ":" correspond au else et la seconde valeur sera utilisée si la condition du if() est FAUX/FALSE.

La condition que j'ai mise: if($plus % 2 == 0) peut se traduire par:
"Si le reste de la division de $plus par 2 est égal à 0"
Comme tu avais mis un pointeur $plus, je l'ai utilisé.

À ton tour, explique moi donc ce que tu veux faire avec ton include dans la balise <img>?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphanteau du PHP | 47 Messages

14 oct. 2005, 20:20

avec mon include je voulai tout simplement donné les paramètre de mon image la taille quoi!tu vois?
dsl je suis encore un débutant alors le modulo et tou jvai voir si jcomprend en e concentrant parce que la je comprend pas beaucoup!mais bon et comment pe on dir de stopé dès qu'il y a plus de photo
hIm It'S good music

Eléphanteau du PHP | 47 Messages

14 oct. 2005, 20:25

c bon j'ai compris mais le % c'est quoi exactement
hIm It'S good music

Mammouth du PHP | 19672 Messages

14 oct. 2005, 20:39

C'est ça le modulo.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphanteau du PHP | 47 Messages

14 oct. 2005, 20:50

ok, en clair le modulo c'est divisé quelque chose et voir si le reste correspond a quelque chose
hIm It'S good music

Mammouth du PHP | 19672 Messages

14 oct. 2005, 21:10

Ben c'est pas très compliqué : là, on vérifie le reste de la division d'un nombre par 2 : le reste ne peut être dans ce cas que 0 ou 1 : d'accord jusque là ? Si j'avais fait $point % 3 == 0, j'aurais vérifié le reste de la division de $point par 3, donc le reste selon la valeur de $point peut être 0, 1 ou 2, rien d'autre.

Le signe % n'est qu'un opérateur qu'on a nommé Modulo par convention et son usage est ce que je viens d'expliquer.
4 % 2 = 0 :correspond à 4 divisé par deux donne à la fin un reste de 0
4 % 3 = 1 :correspond à 4 divisé par 3 donne un reste de 1

C'est plus clair de cette manière ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
pjl
ViPHP | 2119 Messages

14 oct. 2005, 21:46

comment pe on dir de stopé dès qu'il y a plus de photo
Tu vérifie que le fichier image existe bien avec la fonction file_exists
et pour stoper ta boucle, tu as la fonction break.