Afficher le résultats d'une requête de maniére fractionné.

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

yann123
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 109
Inscription: Lun Avr 11, 2005 21:39

Afficher le résultats d'une requête de maniére fractionné.

Message le Sam Déc 22, 2007 0:00

Bonjour,

j'affiche 9 résultats d'une requête sql sur mon site de la manière suivante :
Code: Tout sélectionner
$requete = mysql_query("SELECT * FROM "ma_table" ") or die(mysql_error());

while ($affichage = mysql_fetch_array($requete) )
{
Bla Bla Bla
}

Jusqu'ici rien de compliqué, j'affiche mes neuf résultats a suivre dans ma page.

Je souhaiterais afficher les résultats de cette requête de manière fractionné par trois résultats.

c'est à dire
Code: Tout sélectionner
$requete = mysql_query("SELECT * FROM "ma_table" ") or die(mysql_error());

Afficher les 3 premiers résultats. (du 1er au 3éme)
autre contenu (html)
Afficher 3 autres résultats (du 4éme au 6éme)
autre contenu (html)
Afficher les 3 derniers résultats (du 6éme au 9éme)

Comment pourrais-je faire ?
En espérant avoir réussi à me faire comprendre.

Merci d'avance.[/code]


julien__
WRInaute impliqué
WRInaute impliqué
 
Messages: 316
Inscription: Jeu Déc 28, 2006 2:17

Message le Sam Déc 22, 2007 0:06

Quand tu poses une question technique c'est toujours mieux d'expliquer clairement le but. Est-ce que c'est pour afficher les résultats de ta requête sur trois colonnes différentes dans un tableau?

Si le nombre d'enregistrement qui se trouve dans les résultats est connu tu peux faire ça avec "LIMIT" sinon on fait autrement...

yann123
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 109
Inscription: Lun Avr 11, 2005 21:39

Message le Sam Déc 22, 2007 1:44

Quand tu poses une question technique c'est toujours mieux d'expliquer clairement le but. Est-ce que c'est pour afficher les résultats de ta requête sur trois colonnes différentes dans un tableau?


D'abord, merci de ta réponse.

Je pense l'avoir expliqué, je souhaite afficher mes résultats trois par trois (il y a toujours 9 résultats a ma requête).

Donc trois blocs de trois résultats les un en dessous des autres. Sauf qu'entre chaque bloc, il y a d'autre contenue html.

1°) Je fais ma requête
2°) J'affiche les trois premier résultats.
3°) J'affiche du contenue quelconque HTML.
4°) J'affiche trois autre résultats de ma requête.
5°) J'affiche du contenue quelconque HTML.
6°) J'affiche les trois derniers résultats.

En espérant avoir été plus précis.

Merci


[/quote]

jcaron
WRInaute accro
WRInaute accro
 
Messages: 1222
Inscription: Ven Fév 13, 2004 20:33

Re: Afficher le résultats d'une requête de maniére fractionn

Message le Sam Déc 22, 2007 1:47

yann123 a écrit:j'affiche 9 résultats d'une requête sql sur mon site de la manière suivante :
Code: Tout sélectionner
$requete = mysql_query("SELECT * FROM "ma_table" ") or die(mysql_error());

while ($affichage = mysql_fetch_array($requete) )
{
Bla Bla Bla
}

Jusqu'ici rien de compliqué, j'affiche mes neuf résultats a suivre dans ma page.

Je souhaiterais afficher les résultats de cette requête de manière fractionné par trois résultats.

c'est à dire
Code: Tout sélectionner
$requete = mysql_query("SELECT * FROM "ma_table" ") or die(mysql_error());

Afficher les 3 premiers résultats. (du 1er au 3éme)
autre contenu (html)
Afficher 3 autres résultats (du 4éme au 6éme)
autre contenu (html)
Afficher les 3 derniers résultats (du 6éme au 9éme)

Comment pourrais-je faire ?
[/code]


Euh...
Code: Tout sélectionner
$i = 0;
while ($i++ < 3 && $affichage = mysql_fetch_array($requete))
{
machin
}

ou

Code: Tout sélectionner
$i=0;
while ($affichage = mysql_fetch_array($requete))
{
machin
if ($i++ >= 3)
{
  break;
}
}

ou encore des choses avec des for, ou je ne sais quoi d'autre... Le tout répété trois fois ('tin, tu peux même faire un truc super dingue, des boucles imbriquées).

Il y a des fois où je me demande si quelqu'un ici a déjà entendu parler de www.php.net? Même moi qui ne programme jamais rien en PHP je connais, c'est pour dire...

Bon, je suis un peu méchant, mais il y a quand même beaucoup de gens qui débarquent ici avec des questions dont on se demande quand même s'ils ont cherché ne serait-ce qu'un petit peu... C'est gentil de copier-coller du code, mais ça aide quand même beaucoup de lire la doc, on y apprend tout un tas de trucs formidables, si si, juré.

Jacques.


ltressens
WRInaute passionné
WRInaute passionné
 
Messages: 551
Inscription: Ven Avr 02, 2004 14:52

Message le Sam Déc 22, 2007 8:37

Code: Tout sélectionner
for ($i=0; ...)
{
     if (($i%3)==0) && ($i != 0))
     {
         faire ceci apres 3 elements, sauf au tout debut
     }

     bla bla bla
}


julien__
WRInaute impliqué
WRInaute impliqué
 
Messages: 316
Inscription: Jeu Déc 28, 2006 2:17

Message le Sam Déc 22, 2007 14:32

Les codes donnés te suffisent c'est bon?

yann123
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 109
Inscription: Lun Avr 11, 2005 21:39

Message le Sam Déc 22, 2007 15:31

Bonjour et merci de vos réponses.

J'ai finalement opté pour ceci qui a l'air de bien fonctionner.

Code: Tout sélectionner
$requete = mysql_query("SELECT * FROM "ma_table" ") or die(mysql_error());

for ($i=0;$i<3;$i++) // J'affiche les trois premiers résultats.

{
$affichages = mysql_fetch_array($requete)

Bla Bla Bla

}

Mon code html

for ($i=0;$i<3;$i++) // J'affiche trois autre résultats.

{
$affichages = mysql_fetch_array($requete)

Bla Bla Bla

}

Du  code HTML

for ($i=0;$i<3;$i++) // J'affiche mes trois dernier résultats.

{
$affichages = mysql_fetch_array($requete)

Bla Bla Bla

}


ltressens
WRInaute passionné
WRInaute passionné
 
Messages: 551
Inscription: Ven Avr 02, 2004 14:52

Message le Sam Déc 22, 2007 18:06

...ce qui dénote un penchant pour le copier/coller, source d'erreurs et de bugs dès qu'il faut modifier une des parties copiée/collée :)

yann123
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 109
Inscription: Lun Avr 11, 2005 21:39

Message le Sam Déc 22, 2007 18:15

...ce qui dénote un penchant pour le copier/coller, source d'erreurs et de bugs dès qu'il faut modifier une des parties copiée/collée


Pourquoi dis-tu que c'est un copié/collé ?


ltressens
WRInaute passionné
WRInaute passionné
 
Messages: 551
Inscription: Ven Avr 02, 2004 14:52

Message le Sam Déc 22, 2007 22:33

parce que les parties "affichage de 3 elements" et "bla bla bla" vont se trouver en triple exemplaires dans ton code...


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités