achat index

7 messages dans ce sujet

Posté(e) · Signaler ce message

Bonjour à tous,

je souhaiterai que mes produits s'affichent sur trois ou quatres colonnes dans mon achat index.

Malgrés mes recherches, ne ne trouve pas de solution ;) .

Au mieux, il me duplique les produits sur 4 colonnes.

Toute aide est bienvenue :huh:

Merci !

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

réponse donnée 350 698 fois sur le forum

$nb_colonnes = 2 ou 3 ou 4 ou ...

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

réponse donnée 350 698 fois sur le forum

$nb_colonnes = 2 ou 3 ou 4 ou ...

Bonjour Paulanna,

je suis désolée de te décevoir, mais si je post, c'est parce que ça ne marche pas !

j'ai bien spécifié mon nombre de colonnes à 3 sans succés,

voici mon code :

<?php

include("../configuration.inc.php");


if (!isset($_GET['catid'])) {	$catid = 0;} else {$catid = intval($_GET['catid']);}


$qid_c = recupere_sous_categorie($catid);


$DOC_TITLE = "Peter Span Design";


include("$repertoire_modele/haut.php");

?>

<table width="70%"  border="0" align="center" cellpadding="0" cellspacing="0">

  <tr>

	<td class="tetiere">

	  <?php affiche_arbre_categorie($catid) ?>

	</td>

  </tr>

</table>






<table width="70%" border="0" align="center" cellpadding="0" cellspacing="0">

  <tr>

	<td>

	  <?php



		$sqlcat = "SELECT image, description FROM peel_categories WHERE id = '".$catid."'";

		$rescat = mysql_query($sqlcat);

		$objcat = mysql_fetch_object($rescat);

		if ($rescat) {

			if (mysql_num_rows($rescat) > 0) {

				echo "<div align=\"center\" class=\"normal\">";

				if (!empty($objcat->image)) {

				echo "<img  src=\"$wwwroot/upload/".$objcat->image."\" width=\"150\" align=\"center\">";

				}

				echo "<br /><br >".stripslashes($objcat->description);

				echo "</div>";

			}

		}

			if ($qid_c) {

				if (mysql_num_rows($qid_c) == 0) {

					echo "";

				} else {

				$nb_cellules = mysql_num_rows($qid_c);

	$nb_colonnes = 3;

				echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr valign=\"top\"><td class=\"normal\">";

				echo "<strong>Dans cette rubrique :</strong>";

				echo "</td></tr>";

					 while ($cat = mysql_fetch_array($qid_c)) { ?>

	  <?php }

					echo "<tr><td><img src=$wwwroot/images/blank.gif width=\"1\" height=\"10\"  border=\"0\" alt=\"\" /></td></tr></table>";

				}

			} else {

			echo "";

			}

		 ?>

	  <?php

$nb = 12; //nombre d'enregistrement par page

if (!isset($_GET['start'])) {$start=0;} else {$start = $_REQUEST['start'];}

// Récupération et affichage des données

$sql = "SELECT p.id, p.nom,  p.image1

	FROM peel_produits_categories pc, peel_produits p  LEFT JOIN peel_ecotaxes e ON (p.id_ecotaxe = e.id) WHERE p.id = pc.produit_id AND pc.categorie_id = '".intval($catid)."'

	AND p.etat = '1' ORDER BY p.prix LIMIT $start,$nb";

$result=mysql_query($sql) or die('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . mysql_error());

if (mysql_num_rows($result) == 0) {

	if (mysql_num_rows($qid_c) == 0) {

		echo "aucun produit disponible dans cette catégorie";

	}

	} else {


echo "<table colspan=\"3\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">";


while($prod=mysql_fetch_array($result))

{

?>

	</td>

	<td>

	  <?php



		$sqlcat = "SELECT image, description FROM peel_categories WHERE id = '".$catid."'";

		$rescat = mysql_query($sqlcat);

		$objcat = mysql_fetch_object($rescat);

		if ($rescat) {

			if (mysql_num_rows($rescat) > 0) {

				echo "<div align=\"center\" class=\"normal\">";

				if (!empty($objcat->image)) {

				echo "<img  src=\"$wwwroot/upload/".$objcat->image."\" width=\"150\" align=\"center\">";

				}

				echo "<br /><br >".stripslashes($objcat->description);

				echo "</div>";

			}

		}

			if ($qid_c) {

				if (mysql_num_rows($qid_c) == 0) {

					echo "";

				} else {

				$nb_cellules = mysql_num_rows($qid_c);

	$nb_colonnes = 3;

				echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr valign=\"top\"><td class=\"normal\">";

				echo "<strong>Dans cette rubrique :</strong>";

				echo "</td></tr>";

					 while ($cat = mysql_fetch_array($qid_c)) { ?>

	  <?php }

					echo "<tr><td><img src=$wwwroot/images/blank.gif width=\"1\" height=\"10\"  border=\"0\" alt=\"\" /></td></tr></table>";

				}

			} else {

			echo "";

			}

		 ?>

	  <?php

$nb = 12; //nombre d'enregistrement par page

if (!isset($_GET['start'])) {$start=0;} else {$start = $_REQUEST['start'];}

// Récupération et affichage des données

$sql = "SELECT p.id, p.nom,  p.image1

	FROM peel_produits_categories pc, peel_produits p  LEFT JOIN peel_ecotaxes e ON (p.id_ecotaxe = e.id) WHERE p.id = pc.produit_id AND pc.categorie_id = '".intval($catid)."'

	AND p.etat = '1' ORDER BY p.prix LIMIT $start,$nb";

$result=mysql_query($sql) or die('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . mysql_error());

if (mysql_num_rows($result) == 0) {

	if (mysql_num_rows($qid_c) == 0) {

		echo "aucun produit disponible dans cette catégorie";

	}

	} else {


echo "<table colspan=\"3\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">";


while($prod=mysql_fetch_array($result))

{

?>

	</td>

	<td>

	  <?php



		$sqlcat = "SELECT image, description FROM peel_categories WHERE id = '".$catid."'";

		$rescat = mysql_query($sqlcat);

		$objcat = mysql_fetch_object($rescat);

		if ($rescat) {

			if (mysql_num_rows($rescat) > 0) {

				echo "<div align=\"center\" class=\"normal\">";

				if (!empty($objcat->image)) {

				echo "<img  src=\"$wwwroot/upload/".$objcat->image."\" width=\"150\" align=\"center\">";

				}

				echo "<br /><br >".stripslashes($objcat->description);

				echo "</div>";

			}

		}

			if ($qid_c) {

				if (mysql_num_rows($qid_c) == 0) {

					echo "";

				} else {

				$nb_cellules = mysql_num_rows($qid_c);

	$nb_colonnes = 3;

				echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr valign=\"top\"><td class=\"normal\">";

				echo "<strong>Dans cette rubrique :</strong>";

				echo "</td></tr>";

					 while ($cat = mysql_fetch_array($qid_c)) { ?>

	  <?php }

					echo "<tr><td><img src=$wwwroot/images/blank.gif width=\"1\" height=\"10\"  border=\"0\" alt=\"\" /></td></tr></table>";

				}

			} else {

			echo "";

			}

		 ?>

	  <?php

$nb = 12; //nombre d'enregistrement par page

if (!isset($_GET['start'])) {$start=0;} else {$start = $_REQUEST['start'];}

// Récupération et affichage des données

$sql = "SELECT p.id, p.nom,  p.image1

	FROM peel_produits_categories pc, peel_produits p  LEFT JOIN peel_ecotaxes e ON (p.id_ecotaxe = e.id) WHERE p.id = pc.produit_id AND pc.categorie_id = '".intval($catid)."'

	AND p.etat = '1' ORDER BY p.prix LIMIT $start,$nb";

$result=mysql_query($sql) or die('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . mysql_error());

if (mysql_num_rows($result) == 0) {

	if (mysql_num_rows($qid_c) == 0) {

		echo "aucun produit disponible dans cette catégorie";

	}

	} else {


echo "<table colspan=\"3\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">";


while($prod=mysql_fetch_array($result))

{

?>

	</td>

  </tr>

</table>

<tr>

  <td class="normal" colspan="3">

	<!-- Début du formulaire -->

  </td>

</tr>

<tr>

<td align="center" class="normal" colspan="6">

<?php

}


//Boutons précédent et suivant

if($start)

{echo ("<a class=\"normal\" href=\"$wwwroot/achat/index.php?catid=".$catid."&start=".($start-$nb)."\">Page pr&eacute;c&eacute;dente</a>");}


$result=mysql_query("SELECT COUNT(*) FROM peel_produits p, peel_produits_categories pc WHERE p.id = pc.produit_id	AND pc.categorie_id = $catid  AND p.etat = 1");


$row=mysql_fetch_row($result);


if($row[0]>($start+$nb))

{

if($start)

{echo (" / ");}

echo ("<a class=\"normal\" href=\"$wwwroot/achat/index.php?catid=".$catid."&start=".($start+$nb)."\">Page suivante</a>");

}


echo ("<br />");


//Affichage des pages

if($row[0]>$nb) {// le nombre d'enreg. est > au nb de lignes d'affichage ?

echo ("Page :");

for($index=0;($index*$nb)<$row[0];$index++) // oui alors on affiche les numéros de pages

{

?>

	<b><a class="normal" href="<?php echo $_SERVER['PHP_SELF']."?catid=".$catid."&start=".$index*$nb; ?>"><?php echo $index+1; ?></a></b>

<?php

}

}

echo "</td></tr></table>";


include("$repertoire_modele/bas.php");


/******************************************************************************

* FONCTIONS

*****************************************************************************/


function recupere_sous_categorie($catid=0) {

/* Récupère le nom et la description de toutes les sous-catégories de celle-ci */

	$qid = mysql_query("SELECT id, nom, description, parent_id  FROM peel_categories WHERE parent_id = $catid AND id > 0 AND etat = 1") or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());


	return $qid; }


?>

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

bonjour mets ce ci a la place de ton achat/index ? mais fais le en local pour faire un essay

ma cher

<?

include("../configuration.inc.php");

if (!isset($_GET['catid'])) { $catid = 0;} else {$catid = intval($_GET['catid']);}

$qid_c = recupere_sous_categorie($catid);

$DOC_TITLE = "[PEEL.FR]";

include("$repertoire_modele/haut.php");

?>

<div class="normal" style="border-bottom: 1px dotted grey;text-transform : uppercase;"><? affiche_arbre_categorie($catid) ?></div>

<?

$sqlcat = "SELECT image, description FROM peel_categories WHERE id = '".$catid."'";

$rescat = mysql_query($sqlcat);

$objcat = mysql_fetch_object($rescat);

if ($rescat) {

if (mysql_num_rows($rescat) > 0) {

echo "<div align=\"center\" class=\"normal\">";

if (!empty($objcat->image)) {

echo "<img src=\"$wwwroot/upload/".$objcat->image."\" width=\"150\" align=\"center\">";

}

echo "<br /><br >".stripslashes($objcat->description);

echo "</div>";

}

}

if ($qid_c) {

if (mysql_num_rows($qid_c) == 0) {

echo "";

} else {

echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";

$nb_cellules = mysql_num_rows($qid_c);

$nb_colonnes = 2;

$j = 0;

echo "<div style=\"text-align:center;font-weight:bold\">Liste des sous cat&eacute;gories :</div>";

while ($cat = mysql_fetch_array($qid_c)) {

if ( $j % $nb_colonnes == 0 ){

echo "<tr>";

}

if($j % $nb_colonnes != 0 or $j % $nb_colonnes == 0 ){

// on affiche une cellule

if ( $j %$nb_colonnes == 0 or $j == $nb_cellules ) {

echo "<td width=\"50%\" valign=\"top\">";

}

else {

echo"<td width=\"50%\" valign=\"top\">";}

?>

<table width="100%">

<tr valign="top"><td class="normal">

<li><a class="normal" href="<?=$_SERVER['PHP_SELF']?>?catid=<?=$cat['id'] ?>"><?=$cat['nom'] ?></a></li>

</td></tr>

<? }

echo "<tr><td><img src=$wwwroot/images/blank.gif width=\"1\" height=\"10\" border=\"0\" alt=\"\" /></td></tr></table>";

echo "</td>";

$j++;

if ( $j % $nb_colonnes == 0 or $j == $nb_cellules ){

echo "</tr>";

}

}

echo "</table>";

}

}

?>

<?

$nb = 30; //nombre d'enregistrement par page

if (!isset($_GET['start'])) {$start=0;} else {$start = $_REQUEST['start'];}

// Récupération et affichage des données

$sql = "SELECT p.id, p.reference, p.nom, p.promotion, p.descriptif, p.description, p.image1, p.prix, p.on_special, pc.categorie_id FROM peel_produits p, peel_produits_categories pc WHERE p.id = pc.produit_id AND pc.categorie_id = $catid AND p.etat = 1 ORDER BY p.prix LIMIT $start,$nb";

$result=mysql_query($sql);

if (mysql_num_rows($result) == 0) {

if (mysql_num_rows($qid_c) == 0) {

echo "aucun produit disponible dans cette catégorie";

}

} else {

echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">";

while($prod=mysql_fetch_array($result))

{

?>

<tr>

<td class="normal" valign="top">

<? if ($prod['image1'] != "") { ?>

<img src="<?=$repertoire_images?>/<?=$prod['image1'] ?>" valign="top" width="100" alt="" />

<?} else {?>

<img src="<?=$wwwroot?>/images/photo-non-disponible.gif" align="left" valign="top" width="100%" alt="" />

<?}?>

</td>

<td class="normal">

<span class=petit>Réf. : <?=$prod['reference'] ?></span><br />

<a class="titre" href="<?echo $wwwroot?>/achat/produit_details.php?id=<?=$prod['id'] ?>&catid=<?=$catid?>"><?echo stripslashes($prod['nom']) ?></a><br />

<?

echo stripslashes($prod['descriptif'])."<br />";

$prix = $prod['prix'] * (1-$prod['promotion']/100);

if ($prod['promotion'] != 0) {?>

<font color="#CC0000">Promotion : <? echo $prod['promotion']; ?> %</font><br />

Prix TTC : <s><?=fprix($prod['prix']); ?></s>&nbsp;

<font color="#CC0000"><?=fprix($prix); ?> € TTC</font><br />

<? } else {?>

Prix : <font color="#CC0000"><?=fprix($prix); ?> € T.T.C</font><br />

<? } ?>

<form method="post" action="<?=$wwwroot?>/achat/caddie_ajout.php" name="ajout<?=$prod['id'] ?>">

Quantité :

<select name="qte" class="formulaire1">

<option value="1">1</option>

<option value="2">2</option>

<option value="3">3</option>

<option value="4">4</option>

<option value="5">5</option>

</select>

<input type="hidden" name="id" value="<?=$prod['id'] ?>" />

<a class="normal" href="java script:document.ajout<?=$prod['id'] ?>.submit()">

<img src="<?=$wwwroot?>/images/caddie.gif" align=middle alt="" border="0" />

</a>

<a class="normal" href="java script:document.ajout<?=$prod['id'] ?>.submit()">

Ajouter au caddie

</a>

| <a class="normal" href="<?echo $wwwroot?>/achat/produit_details.php?id=<?=$prod['id'] ?>&catid=<?=$catid?>">

<img src="<?=$wwwroot?>/images/voir.gif" align="middle" width="20" height="20" alt="" border="0" /></a>

<a class="normal" href="<?echo $wwwroot?>/achat/produit_details.php?id=<?=$prod['id'] ?>&catid=<?=$catid?>">+ de détails</a><p>

</form>

</td></tr>

<tr>

<td align="center" class="normal" colspan="2">

<?

}

//Boutons précédent et suivant

if($start)

{echo("<a class=\"petit\" href=\"$wwwroot/achat/index.php?catid=".$catid."&start=".($start-$nb)."\">Page pr&eacute;c&eacute;dente</a>");}

$result=mysql_query("SELECT COUNT(*) FROM peel_produits p, peel_produits_categories pc WHERE p.id = pc.produit_id AND pc.categorie_id = $catid AND p.etat = 1");

$row=mysql_fetch_row($result);

if($row[0]>($start+$nb))

{

if($start)

{echo(" / ");}

echo("<a class=\"petit\" href=\"$wwwroot/achat/index.php?catid=".$catid."&start=".($start+$nb)."\">Page suivante</a>");

}

echo("<br />");

//Affichage des pages

if($row[0]>$nb) {// le nombre d'enreg. est > au nb de lignes d'affichage ?

echo("Page :&nbsp;");

for($index=0;($index*$nb)<$row[0];$index++) // oui alors on affiche les numéros de pages

{

?>

<b><a class="petit" href="<?=$_SERVER['PHP_SELF']."?catid=".$catid."&start=".$index*$nb; ?>"><? echo $index+1; ?></a></b>

<?

}

}

echo "</td></tr></table>";

}

include("$repertoire_modele/bas.php");

/******************************************************************************

* FONCTIONS

*****************************************************************************/

function recupere_sous_categorie($catid=0) {

/* Récupère le nom et la description de toutes les sous-catégories de celle-ci */

$qid = mysql_query("SELECT id, nom, description, parent_id FROM peel_categories WHERE parent_id = $catid AND id > 0 AND etat = 1") or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());

return $qid;

}

?>

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

cela ne fonctionnera pas, car le code donné ci-desusu permet l'affichage des sous catégories sur plusieurs colonnes, et non pas des produits, mais on peux s'en inspirer ..

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

coucou,

exact, paulanna, ça ne marche pas pour les produits mais pour les catégories.

La question est, vu mon pauvre niveau en php, comment transposer pour les produits ?

:huh:

Si j'ai bien lu, c'est cette portion de code qui modifie le tableau ?

if ($qid_c) {


if (mysql_num_rows($qid_c) == 0) {


echo "";


} else {


echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";

$nb_cellules = mysql_num_rows($qid_c);

$nb_colonnes = 2;

$j = 0;

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

il suffit d'adapter le code de gestion des colonnes c'est de la recopie

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping