begin process at 2010 03 15 23:40:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

Afficher N produits par ligne


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Afficher N produits par ligne

jeudi 15 décembre 2005 à 10:25:19 | Afficher N produits par ligne

christobal

Hello, le sujet résume ma question. J'ai la requette SQL suiavnte pour récupérer de maniere aléatoire 8 produits
SELECT * FROM produits ORDER BY RAND() LIMIT 8

J'ai la boucle suiavnte pour l'affichage des produits (1 produits par ligne )
<table width="100%" border="0" cellpadding="0" cellspacing="0">
  <?php
   while($row = mysql_fetch_array($result))
   {
   ?>
  <tr>
    <td width="914" colspan="6">
      <table width="100%" border="0" cellpadding="0" cellspacing="0" class="txt">
        <tr>
          <td width="152"  rowspan="5" valign="top">
            <div align="center"><img src="../image/<?php echo $row["image"]; ?>"></div></td>
          <td colspan="3" >&nbsp;</td>
          </tr>
        <tr>
          <td width="116" >Produit :</td>
          <td width="253"  class="txtmaj"><?php echo $row["nom_prod"]; ?></td>
          <td width="116" >&nbsp;</td>
        </tr>
        <tr>
          <td colspan="3" class="blc">.</td>
        </tr>
        <tr>
          <td colspan="3" >&nbsp;</td>
          </tr>
        <tr>
          <td >Prix :</td>
          <td ><?php echo $row["prix"]; ?> &euro; TTC</td>
          <td >&nbsp;</td>
        </tr>
      </table></td>
  </tr>
 
  <tr>
    <td height="25" colspan="6">
      <hr width="80%" size="1" NOSHADE color="<?php include("couleur.php"); ?>"> </td>
  </tr>
  <?php
   }
  ?>
</table>


Par contre je ne sais pas comment faire pour afficher 4 produits par ligne et que le nombre de ligne augmente ou diminu sivant le nombre de produits que je désire afficher.

Merci de votre aide
jeudi 15 décembre 2005 à 18:04:01 | Re : Afficher N produits par ligne

tetedemul

tu peux faire un truc du style:
$i=0;
print("<table><tr>");
while(...)
{
if(i%4==0 && i<>0)//si i est un multiple de 4, arrive tous les 4 enregistrements...
print("</tr><tr>"); //on ferme la ligne et on commence une nouvelle (on a exclu i=0 car dans ce cas là il n'y a pas de <tr> à fermer
print ("<td>".$produit.</td>"); //arrive tout le temps
i++; //on incrémente i
}

Debutant informatique :-)
jeudi 15 décembre 2005 à 20:05:55 | Re : Afficher N produits par ligne

christobal

Le principe est celui que je cherche mais le script ne marche pas.
Apparement il manque un double quot apres : ".$produit.
Pourquoi n'i a t'il pas de fermeture de la balise TABLE et TR ?
Je me permet ces remarques même ci je ne sais pas comment réaliser.

jeudi 15 décembre 2005 à 21:46:54 | Re : Afficher N produits par ligne

tetedemul

Simples oublis
$i=0;
print("<table><tr>");
while(...)
{
if(i%4==0 && i<>0)//si i est un multiple de 4, arrive tous les 4 enregistrements...
print("</tr><tr>"); //on ferme la ligne et on commence une nouvelle (on a exclu i=0 car dans ce cas là il n'y a pas de <tr> à fermer
print ("<td>".$produit."</td>"); //arrive tout le temps
i++; //on incrémente i
}
print("</tr></table>");

Cela marche-t-il maintenant ou pas?
Debutant informatique :-)
vendredi 16 décembre 2005 à 09:44:40 | Re : Afficher N produits par ligne

christobal

Et Flute ca ne marche pas j'ai une erreur sur la ligne 88 :  
Ligne 88 :  i++; //on incrémente i
Message : Parse error: parse error, unexpected T_INC in index1.php on line 88

Par contre j'ai completé la ligne : while(...) comme suite : while($row = mysql_fetch_array($result))

Comment doit je corriger cette erreur ?

Merci de ton aide

vendredi 16 décembre 2005 à 11:05:29 | Re : Afficher N produits par ligne

tetedemul

Désolé, tout est de ma faute, j'ai oublié les $ devant les noms de variables ! (je suis sur c++ en ce moment donc j'ai perdu l'habitude).
$i=0;
print("<table><tr>");
while($row=mysql_fetch_row($result))
{

if($i%4==0 && $i<>0)//si i est un multiple de 4, arrive tous les 4 enregistrements...
print("</tr><tr>"); //on ferme la ligne et on commence une nouvelle (on a exclu i=0 car dans ce cas là il n'y a pas de <tr> à fermer
print ("<td>".$row[1]."</td>"); //arrive tout le temps
$i++; //on incrémente i
}
print("</tr></table>");
Ce code marche, je l'ai testé.
Debutant informatique :-)

vendredi 16 décembre 2005 à 11:51:14 | Re : Afficher N produits par ligne

christobal

Merci pour ce code qui fonctionne.
Par contre je viens de m'appercevoir qu'il y a que le premier champ de la table qui s'affiche alors que dans mon exemple au debut du post je shouterai avoir :

- L'image du produit (".$row[10].") en dessous
- Le nom du produit (".$row[2].") en dessou
- Le prix du produit  (".$row[4].") en dessou
- Le bouton commander.

A l'heure actuelle j'affiche l'image (contenu dans la DB) comme ça :
<img src="image/<?php echo $row["image"]; ?>
Et le bouton commander comme ça : <a href="magasin/cart.php?action=add_item&id=<?php echo $row["id"]; ?>&qty=1"><img src="Templates/img/ajouter.gif" width="90" height="29" border="0"></a>

Comment l'adapter à ton script ?
Pourquoi utilise on le numero du champ de la table plutôt que son nom ($row[10] correspondait à $row[image])

Merci de ton aide qui a fait grandemant avencer mon projet

vendredi 16 décembre 2005 à 12:59:27 | Re : Afficher N produits par ligne

tetedemul

<?php
print("<td ...>".$row['titre']."<br><img src='".$row['image']."'></td>");
?>
Tu peux t'inspirer de ça pour ce dont tu as besoin (le code html peut être intégré en php avec un print ou un echo) . Si vraiment tu comprends pas, tu me dis et je le ferai à partir du fichier html que t'as posté au début (mais ça me lourde et tu dois pouvoir faire ça tout seul).
Debutant informatique :-)

vendredi 16 décembre 2005 à 21:04:44 | Re : Afficher N produits par ligne

christobal

Ca tourne trés bien merci de ton aide, mais comme je le soupsonnais, suivant la hauteur de l'image les informations qui se trouvent en dessous (nom du produit, prix, bouton commander) ne sont pas aligné sur le même niveau c'est pour ca que j'aimerai avoir un tableau comme dans mon premier post.
Donc sachant que ca ne t'arrange pas peut tu essayer de faire un tableau pour avoir une mise en page parfaite.

Merci de ton aide et désolé du dérangement.


Cette discussion est classée dans : ligne, afficher, nbsp, produits, suiavnte


Répondre à ce message

Sujets en rapport avec ce message

boutique en ligne de présentations [ par Ravier31 ] Bonjour à tous. Gros problème !!!Je désire pré afficher le contenu d'un fichier .txt ligne par ligne [ par Sniark ] Bonjour à tous,Je cherche à lire afficher le contenu d'un fichier .txt ligne par ligne. J'ai cherché sur google, mais n'ai rien trouvé en PHP. Pourtan Trier un tableau [ par lookoom ] Bonjour à tous,j'arrive à afficher une requête sql avec limitation de produits par page (bouton précédent/suivant) mais ... je ne sais comment gérer u Afficher un resultat aléatoire d'un requete sql [ par loupile ] Bonjour, voilà je vous explique, j'aimerai qu'a chaque chargement de la page, les informations affichées soient différentes pour l'utilisateur ... j'a Warning ereg() : REG_EPAREN [ par raven44 ] Bonjour à tous amis du PHP, j'ai depuis peu cette erreur qui s'affiche à l'apelle de la fonction ci-dessous et je ne comprend pa pourquoi.function val comment savoir qu'une chekbox a été cochée [ par odile2ré ] Bonjour,j'ai mis en place une partie administrateur permettant de faire des modifications entre autre.et j'aimerais donc que les chekbox qui ont été c Afficher une ligne d'une table mysql [ par Alferox ] Bonjours,bon bin une question de base toute con.Je voudrais afficher uniquement la ligne qui port l'id 2 d'une table. Il n'y a pas plus simple que de Afficher plusieur ligne du TEXTAREA .. [ par SiNeDeNiS ] Salut a tous !! Merci de votre aide ! Très beau site..Voila mon petit probleme .. J'ai un formulaire php avec une balise TEXTAREA .. j'aimerais que l' Comment m'y prendre? [ par zzzzzz ] Salut.En fait jai une table qui contient plusieurs champs. J'aimerai faire une sorte de "confimation" c'est pour un gereur d'article. Qq poste un arti


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales