zonne repetee

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 : zonne repetee

zone repetee

par unequestion » 22 mai 2008, 12:52

ben en fait j'ai donné juste un element parmi d'autre pour simplifier mais je dois afficher pa mal de truc pour chaque tableau, d'ou le tableau ou zone ou region repetée horizontale mais je vois ce que tu veux dire il faut jouer avec les tr , je vais voir en tout cas merci c gentil de ta part A+

par guilt92 » 22 mai 2008, 12:11

Je crois que la balise <table> provoque un retour à la ligne.
Pourquoi les mettre dans un tableau si c'est pour un seul élément ? (une seule ligne une seule colonne dans ton tableau...)

Soit tu affiches les résultats comme du texte hors du tableau, soit tu te sers de ce code pour adapter les <tr></tr> de ton tableau et donc tu crée des colonnes à chaque passage mais tu crées une fin de ligne et un début de nouveau de ligne que une fois sur 2...

zone repetee

par unequestion » 22 mai 2008, 11:57

Ahh ok d'acord je vois mieux la c'est gentil , donc en testant
$toDisplay =$i; 
  if( $i%2 ==0) 
    $toDisplay .= '<br>'; 
  echo $toDisplay; 
ca me sort
1 2
3 4

c'est parfait il suffit juste de remplacer par ce que je veux afficher j'ai donc fait
$toDisplay ='<table width="473" height="120" border="0" align="center" cellpadding="0" cellspacing="0"><tr><td width="446" height="82">'.$val["nom"].'</td></tr></table>'; 
  if( $i%2 ==0) 
    $toDisplay .= '<br>'; 
  echo $toDisplay; 
et la ca me sort les resultats un en dessous de l'autre ... bizare

par guilt92 » 22 mai 2008, 11:21

C'est normal.

if($i%3) sera égale à 0 une fois sur 3. Toi tu testes quand est ce que cela sera différent de 0 donc tu vois tous les cas sauf ceux ou $i est un multiple de 3. En faisant l'inverse tu auras le résultat attendu :
for($i=0; $i++; $i<30) 
{ 
  $toDisplay = '$i:'.$i; 
  if( !$i%3 ) 
    $toDisplay .= ' est un multiple de 3'; 
  $toDisplay .= '<\br>'; 
  echo $toDisplay; 
} 
Ensuite à toi d adapter pour ton code, si tu sais afficher quelque chose toute les x occurences tu sais mettre des sauts de lignes ou ce que tu veux à ces occurences la ;)

zone repetee

par unequestion » 22 mai 2008, 11:16

merci pour ces reponses, bon je ne sais pas si j'ai bien percuté le truc mais quand je teste le code la :
$i=0;while($val=mysql_fetch_array($ResultatsMeetAdhs)) { $i++;
 $toDisplay = '$i:'.$i; 
 
 if( $i%3 ) 
    $toDisplay .= ' est un multiple de 3'; 
  $toDisplay .= '<\br>'; 
  echo $toDisplay; 
}
ca me sort

$i:1 est un multiple de 3<\br> $i:2 est un multiple de 3<\br> $i:3<\br> $i:4 est un multiple de 3<\br>

je vois pas le rapport avec le saut a la ligne apres 2 ou 3 resultats

Bref en gros peut etre que je me suis mal exprimé mais ce que je cherche c'est une zone repetée mais horizontale

Merci d'avance

par nass » 22 mai 2008, 00:03

edit : et que compte tu faire avec ce code nass ?
C'est une sugestion, mais la tienne est meilleurs :agenouille:

par zeus » 21 mai 2008, 23:47

Tu utilises une variable $i qui s'incrémente à chaque itération de la boucle.
Pour que tout les X résultats, tu ais un saut à la ligne, il faut que tu testes si $i est un multiple de X.
Il existe un opérateur mathématique pour ça : le modulo.

En PHP, le modulo est le signe % (pourcentage)

Pour voir comme il fonctionne essaye le code suivant
for($i=0; $i++; $i<30)
{
  $toDisplay = '$i:'.$i;
  if( $i%3 )
    $toDisplay .= ' est un multiple de 3';
  $toDisplay .= '<\br>';
  echo $toDisplay;
}
edit : et que compte tu faire avec ce code nass ?

par nass » 21 mai 2008, 23:13

essaye ça

echo "<div style='width:300px'><p>";

echo $ceQueTuVeut;

echo "</p></div>";

zone repetee

par unequestion » 21 mai 2008, 22:38

ben tou simplement une requete simple
mysql_select_db($database_Connect, $Connect);
$query_Resultats = SELECT * FROM mytable WHERE etc
$Resultats = mysql_query($query_Resultats, $Connect) or die(mysql_error());
$row_Resultats= mysql_fetch_assoc($Resultats);
$totalRows_Resultats= mysql_num_rows($Resultats);
et l'affichage par une boucle
<?php $i=0; while($val=mysql_fetch_array($Resultats)) { $i++;?>

echo 'de ce que je veux' 

<?php } ?>
le truc c'est que les resultats sortent un en dessous de l'autre moi je veux un a coté de l'autre genre 2 ou 3 cote a cote ensuite la ca repart a la ligne

Merci

par zeus » 21 mai 2008, 10:47

En fait, ta question est une question de débutant (c'est pas une critique, on est tous passé par là), donc le forum PHP5 n'est pas franchement approprié.
Il doit être utilisé pour les question concernant la logique Objet de PHP.

Sinon, pour ta question, montre nous le code de ta liste actuelle et on essayera de t'aider ;)

zone repetee

par unequestion » 21 mai 2008, 09:57

Merci, ben je bosse sur dremweaver en php 5

par zeus » 20 mai 2008, 23:32

Modération :
Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "Débuter en PHP".

De plus, il est utile de donner le code que tu utilises actuellement, celui qui ne donne pas le résultat escompté, pour que nous puissions t'aider.

Merci de prendre le temps de lire les règlements
ainsi que l'intitulé de chaque forum avant de poster un nouveau sujet.

zonne repetee

par bill » 20 mai 2008, 20:52

Salut a tous, je fait une boucle pour afficher des resultats mais il s'affichent par défaut un en dessous de l'autre, je voudrais savoir comment les aficher un a coté de l'autre enfin deux par deux quoi ... Merci de m'aider