"Région répétée" horizatonale ?

Dolph38
Invité n'ayant pas de compte PHPfrance

12 juin 2008, 17:32

Bonjour,

Sur ma page d'accueil, j'aimerais afficher dans un tableau de 2 lignes et 2 colonnes, les 4 derniers articles publiés sur mon site.

Hors lorsque j'utilise l'outil "région répétée" sur mon tableau de reference contenant :
- la date de publication
- le titre
- le contenu. (limité à 40 caracteres)

Par l'intermediaire de cette boucle, j'obtiens ces 4 tableaux, les uns au dessous des autres.

Mais voilà, j'aimerai avoir une disposition différente.
Je souhaiterais avoir ces résultats sous la forme :

Code : Tout sélectionner

actu 1 actu 2 actu 3 actu 4
Comment faire, svp ?

Merci.

Invité
Invité n'ayant pas de compte PHPfrance

12 juin 2008, 17:39

j'ai oublié de préciser que j'utilisais "dreamweaver 8".

ViPHP
AB
ViPHP | 5818 Messages

12 juin 2008, 19:24

Ben va falloir oublier dreamweaver pour un temps et mettre les mains dans le camboui.

Tu comptes tes enregistrements que tu listes dans des cellules <td></td> et tous les deux enregistrements tu crée une nouvelle ligne <tr>.

Avant ta boucle tu initialises une variable par exemple $i = 1 que tu incrémentes (à la fin du code) de l'intérieur de ta boucle et tu fais un modulo sur $i pour déclencher la création d'un nouvelle ligne.

Un truc dans le genre
$i = 1;

While (...) {

if ($i%2 == 0) {echo '</tr><tr>';}

$i++;
}


Invité
Invité n'ayant pas de compte PHPfrance

13 juin 2008, 08:44

merci de ta réponse.

Dolph38
Invité n'ayant pas de compte PHPfrance

13 juin 2008, 14:55

mon php est un peu rouillé... :)

Que veut dire le "%", s'il te plait ?

Eléphant du PHP | 139 Messages

13 juin 2008, 15:09

c'est le modulo ...
modulo = reste de la division entière

Exemple 5%3 = 2 (5/3 = 1, reste 2)

Invité
Invité n'ayant pas de compte PHPfrance

13 juin 2008, 15:17

Code : Tout sélectionner

<?php require_once('Connections/Connexion_federation_bdd.php'); ?> <?php mysql_select_db($database_Connexion_federation_bdd, $Connexion_federation_bdd); $query_apercu_articles = "SELECT * FROM actualites ORDER BY id_nouvelle DESC"; $apercu_articles = mysql_query($query_apercu_articles, $Connexion_federation_bdd) or die(mysql_error()); $row_apercu_articles = mysql_fetch_assoc($apercu_articles); $totalRows_apercu_articles = mysql_num_rows($apercu_articles); ?><!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=iso-8859-1" /> <title>Document sans titre</title> </head> <body> [color=red]<?php $i = 1; While ($i <= 2) { <table width="400" border="1" cellspacing="2" cellpadding="2"> <tr> <td>Publi&eacute; le <?php echo $row_apercu_articles['date_nouvelle']; ?></td> </tr> <tr> <td><?php echo $row_apercu_articles['Titre_nouvelle']; ?></td> </tr> <tr> <td><?php echo $row_apercu_articles['Descriptions_nouvelle']; ?></td> </tr> </table> echo '</tr><tr>';} $i++; } ?>[/color]</body> </html> <?php mysql_free_result($apercu_articles); ?>

Dolph38
Invité n'ayant pas de compte PHPfrance

13 juin 2008, 15:19

(oups)

bon j'ai testé une fonction légerement différente mais elle ne marche pas, mais est-ce qu'elle est valable ?

Code : Tout sélectionner

<?php require_once('Connections/Connexion_federation_bdd.php'); ?> <?php mysql_select_db($database_Connexion_federation_bdd, $Connexion_federation_bdd); $query_apercu_articles = "SELECT * FROM actualites ORDER BY id_nouvelle DESC"; $apercu_articles = mysql_query($query_apercu_articles, $Connexion_federation_bdd) or die(mysql_error()); $row_apercu_articles = mysql_fetch_assoc($apercu_articles); $totalRows_apercu_articles = mysql_num_rows($apercu_articles); ?><!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=iso-8859-1" /> <title>Document sans titre</title> </head> <body> <?php $i = 1; While ($i <= 2) { <table width="400" border="1" cellspacing="2" cellpadding="2"> <tr> <td>Publi&eacute; le <?php echo $row_apercu_articles['date_nouvelle']; ?></td> </tr> <tr> <td><?php echo $row_apercu_articles['Titre_nouvelle']; ?></td> </tr> <tr> <td><?php echo $row_apercu_articles['Descriptions_nouvelle']; ?></td> </tr> </table> echo '</tr><tr>';} $i++; } ?> </body> </html> <?php mysql_free_result($apercu_articles); ?>

Dolph38
Invité n'ayant pas de compte PHPfrance

16 juin 2008, 11:45

Je n'arrive pas à savoir où integrer la boucle dans mon code.
Le voici sans boucle :

Code : Tout sélectionner

<?php require_once('Connections/Connexion_federation_bdd.php'); ?> <?php $maxRows_apercu_articles = 4; $pageNum_apercu_articles = 0; if (isset($_GET['pageNum_apercu_articles'])) { $pageNum_apercu_articles = $_GET['pageNum_apercu_articles']; } $startRow_apercu_articles = $pageNum_apercu_articles * $maxRows_apercu_articles; mysql_select_db($database_Connexion_federation_bdd, $Connexion_federation_bdd); $query_apercu_articles = "SELECT * FROM actualites ORDER BY id_nouvelle DESC"; $query_limit_apercu_articles = sprintf("%s LIMIT %d, %d", $query_apercu_articles, $startRow_apercu_articles, $maxRows_apercu_articles); $apercu_articles = mysql_query($query_limit_apercu_articles, $Connexion_federation_bdd) or die(mysql_error()); $row_apercu_articles = mysql_fetch_assoc($apercu_articles); if (isset($_GET['totalRows_apercu_articles'])) { $totalRows_apercu_articles = $_GET['totalRows_apercu_articles']; } else { $all_apercu_articles = mysql_query($query_apercu_articles); $totalRows_apercu_articles = mysql_num_rows($all_apercu_articles); } $totalPages_apercu_articles = ceil($totalRows_apercu_articles/$maxRows_apercu_articles)-1; ?><!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=iso-8859-1" /> <title>Document sans titre</title> </head> <body> <?php do { ?> <table width="400" border="1" cellpadding="2" cellspacing="2" bgcolor="#993300"> <tr> <td>Publi&eacute; le <?php echo $row_apercu_articles['date_nouvelle']; ?></td> </tr> <tr> <td><?php echo $row_apercu_articles['Titre_nouvelle']; ?></td> </tr> <tr> <td><?php echo $row_apercu_articles['Descriptions_nouvelle']; ?></td> </tr> </table> </br> </br> <?php } while ($row_apercu_articles = mysql_fetch_assoc($apercu_articles)); ?><p>&nbsp; </p> </body> </html> <?php mysql_free_result($apercu_articles); ?>