Forum-webmaster
Technique - programmation => PHP / MySQL => Message commencé par: Lookier le le 08-01-2013 a 22:23:07

Titre: J'ai un problème d'affichage
Posté par: Lookier le le 08-01-2013 a 22:23:07

Bonsoir je poste ce message en vous demandant de l'aide, j'ai mon site qui est dynamique mais j'ai un gros problème d'affichage. Voilà ce qu'affiche mon script avec mon CSS :
[url=http://www.imagup.com/data/1172345621.html]

Alors que je voudrais que tous ce mettent sur la même ligne ou plutot 3 par ligne. Et puis la page centré du contenu.
mon code script.php:

Code:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
   <title>Script</title>
   <link href="theme/style.css" rel="stylesheet" type="text/css" />
   <link rel="stylesheet" type="text/css" href="theme.css" />
   <link rel="shortcut icon" type="image/gif" href="images/favicon.gif">
   <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
   <script type="text/javascript" src="highslide/highslide.js"></script>
   <link rel="stylesheet" type="text/css" href="highslide/highslide.css" />
   <script type="text/javascript">
hs.graphicsDir = 'highslide/graphics/';
   </script>
</head>
<body>
<center> <!-- Internet Explorer -->
<!-- Header & Navigation -->
   <div id="header"></div>
      <br>
   <div id="navigation">
   
   <ul id="menu">
      <?php include('menu.php');?>
   </div>
         

<!-- Fin - Header & Navigation -->
<!-- Contenu -->
<div id="contenu">

<!-- colonne -->
<div id="colonne_gauche">
<div id="haut_box_droite"></div>
<div id="milieu_box_droite">
<br>
mettre mettre<br><br><br>

</div>
<div id="bas_box_droite"></div>
<br>
</div>

<div id="colonne_droite">
<div id="milieu_box_gauche">
<br><br>
<?php
mysql_connect('localhost', 'root', '');
mysql_select_db(script');

$nombreDeMessagesParPage = 5; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS codeprod FROM produit');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['codeprod'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages

?>
</p>
<?php


// --------------- Étape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------

if (isset($_GET['page']))
{
$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query('SELECT * FROM produit ORDER BY codeprod DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

while ($donnees = mysql_fetch_array($reponse))
{

?><center>
<table>
   <tr><div id="taille">
      <td width="2%"><a href="profil.php?produit=<?php echo $donnees['codeprod'];?>"><?php echo $donnees['nomprod'];?>      <br><a href="<?php echo $donnees['imgprod'];?>" class="highslide" onclick="return hs.expand(this)"><img src="<?php echo $donnees['imgprod'];?> alt="Highslide JS"
width="180" height="120" /></a><br><?php echo $donnees['prixprod'];?></td></div>
   <td width="2%"><?php   } ?></td>
   </tr>
</table>
</center>   
</div><br>
<div id="page">
<?php
echo 'Page : ';
$pre=$page-1;
echo"<a href=indexou.php?page=$pre><<</a>";
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="indexou.php?page=' . $i . '">' . $i . '</a> ';
}
         $sui=$page+1;
         echo"<a href='indexou.php?page=$sui'>>>></a>";      

mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?></div>
</div>
</div>
<div id="copyrigh"><br><?php include('copy.php');?></div>

<!-- Fin de la colonne -->
<!-- Fin du contenu -->
<!-- Copyright -->

</body>
</html>

<!-- Compatible Mozilla Firefox & autres Geckos; Safari, Opera, Google Chrome -->

Titre: Re:J'ai un problème d'affichage
Posté par: Lookier le le 08-01-2013 a 22:23:25

la suite du message :



et mon code style.css

Code:


/* Aspect général du Site */

@charset "UTF-8";
body {
   background-color: #FFF;
   background-image: url(images/bg.jpg);
   background-repeat: no-repeat;
   background-position: top;
   font-family: Trebuchet MS, Verdana, Arial, Helvetica, sans-serif;
   font-weight: bold;
   font-size: 10px;
   border: 0px;
   margin: 0px;
   padding: 0px;
}

img{
   border: 0px;
}

a:active{
   color:    #1C7EFE;
   text-decoration: none;
}

a:link, a:visited {
   color: #1C7EFE;
   text-decoration: none;
         
}


/* Éléments du Site */

#header{
   background-image: url(images/header.png);
   background-position: center;
   background-repeat: no-repeat;
   height: 44px;
   width: 703x;
}

#contenu{
   width:89%;
   float:left;
   margin-left:30px;
}

#colonne_droite{
   width: 1000px;
   float:right;
   margin-top: 30px;
   margin-right:280px;
}

#milieu_box_gauche{
   background-color:white;
   background-repeat: repeat-y;
   width: 1000px;
   font-size: 10px;
   padding-left:50px;
   padding-right:150px;
}

#taille {
   width: 30%;
   color: #000;
   height:0px;
   font-size: 12px;
   background-position: center;
   }

#page{
   margin-top:130px;
}


#colonne_gauche{
   width: 300px;
   float: left;
   margin-top: 30px;
}


#haut_box_droite{
   background-image: url(images/haut_box_droite.png);
   background-repeat: no-repeat;
   height: 20px;
   width: 303px;
}

#milieu_box_droite{
   background-image: url(images/milieu_box_droite.png);
   background-repeat: repeat-y;
   width: 303px;
   font-size: 10px;
}





/* RÉSOLUTION DE BUG - Centrage du Copyright (sous Firefox, Safari, Opera, Google Chrome) */

#copyright{
   width: 100%;
   color: #000;
   height:60px;
   font-size: 12px;
   margin-top:320px;
   background-color:#FFFFFF;
   margin-top:630px;
}
#copyrigh{
   width: 100%;
   color: #000;
   height:60px;
   font-size: 12px;
   margin-top:320px;
   background-color:#FFFFFF;
   margin-top:60px;
}

/* MENU */
#navigation{
   opacity:0.5;
   height: 67px;
   width: 900px;
   font-size: 14px;
   
}
/* Principal */
#menu{
width: 100%;
margin: 0;
padding: 10px 0 0 0;
list-style: none;
background: #111;
background: -moz-linear-gradient(#444, #111);
background: -webkit-gradient(linear,left bottom,left top,color-stop(0, #111),color-stop(1, #444));
background: -webkit-linear-gradient(#444, #111);
background: -o-linear-gradient(#444, #111);
background: -ms-linear-gradient(#444, #111);
background: linear-gradient(#444, #111);
-moz-border-radius: 50px;
border-radius: 50px;
-moz-box-shadow: 0 2px 1px #9c9c9c;
-webkit-box-shadow: 0 2px 1px #9c9c9c;
box-shadow: 0 2px 1px #9c9c9c;
}

#menu li{
float: left;
padding: 0 0 10px 0;
position: relative;
}

#menu a{
float: left;
height: 25px;
padding: 0 25px;
color: #999;
text-transform: uppercase;
font: bold 12px/25px Arial, Helvetica;
text-decoration: none;
text-shadow: 0 1px 0 #000;
}

#menu li:hover > a{
color: #fafafa;
}

*html #menu li a:hover{ /* IE6 */
color: #fafafa;
}

#menu li:hover > ul{
display: block;
}

/* Sous-menu */

#menu ul{
list-style: none;
margin: 0;
padding: 0;
display: none;
position: absolute;
top: 35px;
left: 0;
z-index: 99999;
background: #444;
background: -moz-linear-gradient(#444, #111);
background: -webkit-gradient(linear,left bottom,left top,color-stop(0, #111),color-stop(1, #444));
background: -webkit-linear-gradient(#444, #111);
background: -o-linear-gradient(#444, #111);
background: -ms-linear-gradient(#444, #111);
background: linear-gradient(#444, #111);
-moz-border-radius: 5px;
border-radius: 5px;
}

#menu ul li{
float: none;
margin: 0;
padding: 0;
display: block;
-moz-box-shadow: 0 1px 0 #111111, 0 2px 0 #777777;
-webkit-box-shadow: 0 1px 0 #111111, 0 2px 0 #777777;
box-shadow: 0 1px 0 #111111, 0 2px 0 #777777;
}

#menu ul li:last-child{
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}

#menu ul a{
padding: 10px;
height: auto;
line-height: 1;
display: block;
white-space: nowrap;
float: none;
text-transform: none;
}

*html #menu ul a{ /* IE6 */
height: 10px;
width: 150px;
}

*:first-child+html #menu ul a{ /* IE7 */
height: 10px;
width: 150px;
}

#menu ul a:hover{
background: #0186ba;
background: -moz-linear-gradient(#04acec, #0186ba);
background: -webkit-gradient(linear, left top, left bottom, from(#04acec), to(#0186ba));
background: -webkit-linear-gradient(#04acec, #0186ba);
background: -o-linear-gradient(#04acec, #0186ba);
background: -ms-linear-gradient(#04acec, #0186ba);
background: linear-gradient(#04acec, #0186ba);
}

#menu ul li:first-child a{
-moz-border-radius: 5px 5px 0 0;
-webkit-border-radius: 5px 5px 0 0;
border-radius: 5px 5px 0 0;
}

#menu ul li:first-child a:after{
content: '';
position: absolute;
left: 30px;
top: -8px;
width: 0;
height: 0;
border-left: 5px solid transparent;
border-right: 5px solid transparent;
border-bottom: 8px solid #444;
}

#menu ul li:first-child a:hover:after{
border-bottom-color: #04acec;
}

#menu ul li:last-child a{
-moz-border-radius: 0 0 5px 5px;
-webkit-border-radius: 0 0 5px 5px;
border-radius: 0 0 5px 5px;
}

/* Rétablissement du flottement */
#menu:after{
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}

* html #menu { zoom: 1; } /* IE6 */
*:first-child+html #menu { zoom: 1; } /* IE7 */

/* FIN MENU*/


En ésperant avoir une réponse rapidement, merci de bien vouloir m'aider !

Titre: Re:J'ai un problème d'affichage
Posté par: KB le le 09-01-2013 a 10:56:18

hello,

Je n'ai regardé que rapidement ton code mais tu as fait une boucle qui liste tes résultats. Il suffit de préciser que tout les 3 enregistrements (tout les multiples de 3), tu passes a la ligne.

Titre: Re:J'ai un problème d'affichage
Posté par: Lookier le le 09-01-2013 a 12:40:39

J y est pensé à mettre sa mais je sais pas vraiment comment le codé :/

Titre: Re:J'ai un problème d'affichage
Posté par: KB le le 09-01-2013 a 17:40:40

voila l'idée:
tu créés une variable de valeur nul i=0;
Tu l'incrémentes dans ta boucle i++;
tu fait une condition: si i est un multiple de 3, je vais a la ligne.

Titre: Re:J'ai un problème d'affichage
Posté par: Lookier le le 10-01-2013 a 20:19:28

<?php
mysql_connect('localhost', 'root', '');
mysql_select_db('thomas');

$nombreDeMessagesParPage = 1; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS codeprod FROM produit');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['codeprod'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages

?>
</p>
<?php


// --------------- Étape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------

if (isset($_GET['page']))
{
$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$prods=3;
$reponse = mysql_query('SELECT * FROM produit ORDER BY codeprod DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

while ($donnees = mysql_fetch_array($reponse))
{

?><center>
<table>
<?php
for ($l = 1 ; $l <= $prods ; $l++)
{
echo '<br> ';

?>
   <tr>
      <td width="2%"><a href="profil.php?produit=<?php echo $donnees['codeprod'];?>"><?php echo $donnees['nomprod'];?>      <br><a href="<?php echo $donnees['imgprod'];?>" class="highslide" onclick="return hs.expand(this)"><img src="<?php echo $donnees['imgprod'];?> alt="Highslide JS"
width="180" height="120" /></a><br><?php echo $donnees['prixprod'];?></td>
   <td width="2%"><?php } ?></td>
   </tr>
</table>
</center>
   <?php } ?>
</div><br>
<div id="page">
<?php
echo 'Page : ';
$pre=$page-1;
echo"<a href=indexou.php?page=$pre><<</a>";
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="indexou.php?page=' . $i . '">' . $i . '</a> ';
}
         $sui=$page+1;
         echo"<a href='indexou.php?page=$sui'>>>></a>";      

mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?></div>

J'ai mis sa et sa marche toujours pas

Titre: Re:J'ai un problème d'affichage
Posté par: Lookier le le 13-01-2013 a 10:11:26

Excusez moi je suis surement lourd, mais ça me soule vraiment de ne pas y arrivé à faire sa :s


Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.