Flux d’activité

Flux d’activité de Messages

  1. jetrouve2tout


    peux tu nous faire voir le code qui gère l'affichage des pages (en bas de page de achat/index.php) ?

    Le voilà :

    //Affichage des pages

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

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

    {

    ?>

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

    <?php

    }

    }

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

    }

    Merci d'avance

  2. jetrouve2tout


    Bonjour,

    Malgré mes recherches sur le forum, je n'ai pas trouvé une réponse à ma question.

    Mon pb est l'affichage des articles dans mon site. je m'explique (dans achat/index.php)

    Dans une catégories, j'ai par exemple 37 articles. Au lieu d'en afficher 10 par pages, tout est affiché sur la même page et en bas il ya page précedente ou suivante avec 1 - 2 - 3 - 4 . Si on clique sur page 2 les mêmes 37 articles apparaissent puis page 3 idem . j'ai vérifié $nb = 10. Je ne comprends pas.

    Merci d'avance pour votre aide

  3. Sam59


    Bonjour Mr Ruault

    me revoila ! depuis deux mois j'avais un peu décroché vacances oblige ;)

    (je sais cela ne regarde que moi :( )

    j'ai vu ici et là une version 4 premium pouvez nous en parler ?

    Est il possible de connaitre les évolutions à venir de ce merveilleux projet qu'est PEEL ?

    merci, je ne manque pas une miette :P

    Bonjour,

    Peut-on savoir où en est ce merveilleux projet ? :)

  4. catseyes


    coucou,

    merci pour ta reponse paulana,

    j'ai trouvé !

    si l'on veut juste ne nom de la marque, on ajoute p.marque au select et <?php echo ($prod['marque'] dans le td.

    Si l'on veut le logo (image2 etant le logo :

    function print_on_specials() {
    
    /* Affiche la liste des catégories qui sont spéciales */
    
    	global $wwwroot, $repertoire_modele;
    
    
    	$requete = "SELECT p.id, p.nom, p.promotion, p.descriptif, p.image1, p.image2, p.marque, e.prix_ttc , p.stock, p.on_stock 
    
    	, IF(ISNULL(e.prix_ttc),p.prix, (p.prix + e.prix_ttc)) AS prix_catalogue
    
    	, IF(ISNULL(e.prix_ttc),p.prix * (1-p.promotion/100),(p.prix * (1-p.promotion/100) + e.prix_ttc)) AS prix_vente 
    
    	FROM peel_produits p LEFT JOIN peel_ecotaxes e ON (p.id_ecotaxe = e.id) WHERE p.on_special = '1' AND p.etat = '1'";
    
    
    	$qid = mysql_query($requete) or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    
    
    	if (mysql_num_rows($qid) == 0) { 
    
    
    	echo "Aucun produit n'a été prévu en page d'accueil"; 
    
    
    	} else {
    
    
    	$nb_cellules = mysql_num_rows($qid);
    
    	$nb_colonnes = 3;
    
    	?>
    
    
    <p>&nbsp;</p>
    
    <p>&nbsp;</p>
    
    <table align="center" border="0" cellspacing="0" cellpadding="0" width="80%">
    
      <tr><td colspan="<?php echo $nb_colonnes?>" class="tetiere">Notre sélection</td></tr>
    
    			<?php 
    
    			$j = 0;
    
    			while ($prod = mysql_fetch_array($qid)) 
    
    			{
    
    			if ( $j % $nb_colonnes == 0 ) {
    
    			echo "<tr valign=\"top\">";
    
    			}
    
    			if($j % $nb_colonnes !=0 OR $j % $nb_colonnes == 0 ) {
    
    			// on affiche une cellule
    
    			echo "<td class=\"petit\" width=\"33%\">";
    
    			?>
    
    			<table align="center" border="0" cellspacing="0" cellpadding="0" width="100%">
    
    
    			<tr><td class="label" align="center"><a class="normal" href="<?php echo $wwwroot ?>/achat/produit_details.php?id=<?php echo $prod['id'] ?>"><?php echo $prod['nom']?></a></td></tr>
    
    
    			<tr><td  class="normal"align="center" valign="middle">
    
    
    						<?php if ($prod['image2'] <> "") {?>
    
    
    			<div align="center"><img src="<?php echo $wwwroot?>/upload/<?php echo $prod['image2']?>" alt="" /></div>
    
    
    			<?php } else {?><div align="center"><img src="<?php echo $wwwroot?>/upload/<?php echo $prod['image2']?>" alt="" /></div><?php }?>
    
    
    			<?php if ($prod['image1'] <> "") {?>
    
    
    			<div align="center"><img src="<?php echo $wwwroot?>/upload/<?php echo $prod['image1']?>" width="150" alt="" /></div>
    
    
    			<?php } else {?><div align="center"><img src="<?php echo $wwwroot?>/images/photo-non-disponible.gif" alt="" /></div><?php }?></td></tr>
    
    
    			<tr><td class="normal">

  5. catseyes


    bonjour, :(

    je travaille actuellement sur une boutique ou il y à beaucoup de produits par catégories.

    Je voudrais donc générer des vignettes sur achat/index.php

    J'ai le code suivant :

    <?php
    
    
    
    // ---- function to rotate and merge the RGB and Alpha Channels
    
    // adapted from jon at driestone dot com http://us3.php.net/manual/en/function.imagerotate.php
    
    function alpha_rotate($src_RGB, $src_alpha, $angle, $PNGsupport){
    
    	   global $r0, $g0, $b0;
    
    
    	   if($angle != 0) {
    
    		 $src_RGB = imagerotate($src_RGB, $angle, 0x000000);
    
    		 $src_alpha = imagerotate($src_alpha, $angle, 0x000000);
    
    	   }
    
    
    	   imagealphablending($src_RGB, false);
    
    
    	   for ($theX=0;$theX<imagesx($src_RGB);$theX++){
    
    		   for ($theY=0;$theY<imagesy($src_RGB);$theY++){
    
    
    			   $rgb = imagecolorat($src_RGB,$theX,$theY);
    
    			   $r = ($rgb >> 16) & 0xFF;
    
    			   $g = ($rgb >> 8) & 0xFF;
    
    			   $b = $rgb & 0xFF;
    
    
    			   $rgb = imagecolorat($src_alpha,$theX,$theY);
    
    			   $a = $rgb & 0xFF;
    
    			   $a = 127-floor($a/2);
    
    			   $t = $a/128.0;
    
    
    			   if($PNGsupport) {
    
    				 $myColour = imagecolorallocatealpha($src_RGB,$r,$g,$b,$a);
    
    			   } else {
    
    				 $myColour = imagecolorallocate($src_RGB,$r*(1.0-$t)+$r0*$t,$g*(1.0-$t)+$g0*$t,$b*(1.0-$t)+$b0*$t);
    
    			   }
    
    			   imagesetpixel($src_RGB, $theX, $theY, $myColour);	
    
    		   }
    
    	   }
    
    
    	   return $src_RGB;
    
    }
    
    
    // -- test for PNG transparency support, ie if the browser is MicroSoft Internet Explorer version <7 --
    
    $PNGsupport = true;
    
    $Browser = $HTTP_USER_AGENT;
    
    if(!$Browser) $Browser = $_SERVER['HTTP_USER_AGENT'];
    
    if (ereg ( 'MSIE ([0-9].[0-9]{1,2})', $Browser,$log_version) ) {
    
      if($log_version[1] < 7) $PNGsupport = false;
    
    }
    
    
    // --- Cache ---
    
    $cache_directory = "cache";  // specify the cache directory - make sure it has writing authorization
    
    $use_cache = false;  // set to true or false, whether you'd like to cache the thumbnails or not
    
    
    // --- parameters ---
    
    $filename = $_REQUEST['file'];  // name of the file containing the source image
    
    $max_h = $_REQUEST['150'];   // maximal wanted horizontal size
    
    $max_v = $_REQUEST['150'];   // maximal wanted vertical size
    
    $flou = $_REQUEST['flou']; // distance of blur
    
    $r = $_REQUEST['0'];  // angle to rotate the image
    
    $d = $_REQUEST['20'];  // distance of the shadow
    
    $a = $_REQUEST['45'];  // angle of the shadow
    
    $b = $_REQUEST['10'];  // thickness of border
    
    $c = $_REQUEST['c'];  // whether the picture should be cached
    
    if(!$max_h) $max_h = 150;
    
    if(!$max_v) $max_v = 150;
    
    if(!$a) $a = 45;
    
    if(!$d) $d = $flou*0.25;
    
    if(!$flou) $flou = 10;
    
    if($c) $use_cache = true;
    
    $flou_h = $flou;
    
    $flou_v = $flou;
    
    $dist_h = $d * cos(deg2rad($a+$r));
    
    $dist_v = $d * sin(deg2rad($a+$r));
    
    
    // --- background colour (in case PNG transparency not supported) ---
    
    $r0 = $_REQUEST['r0'];
    
    $g0 = $_REQUEST['g0'];
    
    $b0 = $_REQUEST['b0'];
    
    if(!$r0) $r0 = 255; // default background colour is white
    
    if(!$g0) $g0 = 255;
    
    if(!$b0) $b0 = 255;
    
    
    if($filename && file_exists($filename)) {
    
      $md5 = md5_file($filename);
    
    
      if($PNGsupport) {
    
    	$cached_file = $md5.".png";
    
      } else {
    
    	$cached_file = $md5.".jpg";
    
      }
    
    
      if( file_exists($cache_directory.$cached_file) && $use_cache) {
    
    	header("Location:".$cache_directory.$cached_file."\n\n");
    
      }
    
      else {
    
    	if(substr($filename,-4,4)==".jpg") {
    
    	  $image = imagecreatefromjpeg($filename);
    
    	}
    
    	if(substr($filename,-4,4)==".png") {
    
    	  $image = imagecreatefrompng($filename);
    
    	}
    
    
    	$src_size = getimagesize($filename);
    
    	$h = $src_size[0];
    
    	$v = $src_size[1];
    
    	if($v * $max_h - $h * $max_v < 0)
    
    	{ $wanted_h = $max_h; $wanted_v = $v*($max_h/$h); }
    
    	else 
    
    	{ $wanted_v = $max_v; $wanted_h = $h*($max_v/$v);  }
    
    	$thumbnail = imagecreatetruecolor($wanted_h-2*$b, $wanted_v-2*b);
    
    	imagecopyresampled($thumbnail, $image, 0, 0, 0, 0, $wanted_h-2*$b, $wanted_v-2*$b, $h, $v);
    
    
    	if(!$flou_h) $flou_h = 10; 
    
    	if(!$flou_v) $flou_v = 10;
    
    
    	// ---- RGB ----
    
    	$rgb = imagecreatetruecolor($wanted_h+$flou_h,$wanted_v+$flou_v);
    
    	$colour = imagecolorallocate($rgb, 0, 0, 0);
    
    	imagefilledrectangle($rgb, 0, 0, $wanted_h+$flou_h, $wanted_v+$flou_v, $colour);
    
    	$colour = imagecolorallocate($rgb, 255, 255, 255);
    
    	imagefilledrectangle($rgb, $flou_h*0.5-$dist_h, $flou_v*0.5-$dist_v, $wanted_h+$flou_h*0.5-$dist_h, $wanted_v+$flou_h*0.5-$dist_v, $colour);
    
    	imagecopymerge($rgb, $thumbnail, 1+$b + $flou_h*0.5-$dist_h, 1+$b + $flou_v*0.5-$dist_v, 0,0, $wanted_h-2*$b, $wanted_v-2*$b, 100);
    
    
    	// ---- Ombre (alpha) ----
    
    	$ombre = imagecreatetruecolor($wanted_h+$flou_h,$wanted_v+$flou_v);
    
    	imagealphablending($ombre, false);
    
    	$colour = imagecolorallocate($ombre, 0, 0, 0);
    
    	imagefilledrectangle($ombre, 0, 0, $wanted_h+$flou_h, $wanted_v+$flou_v, $colour);
    
    
    	$nStep = 30; // this parameter can be increased for better smoothness
    
    	for($i=0;$i<=$nStep;$i++) {
    
    	  $t = ((1.0*$i)/$nStep);
    
    	  $intensity = 255*$t*$t;
    
    	  $colour = imagecolorallocate($ombre, $intensity, $intensity, $intensity);
    
    	  $points = array(
    
    		   $flou_h*$t,				$flou_v,	 // Point 1 (x, y)
    
    		   $flou_h,				   $flou_v*$t,  // Point 2 (x, y)
    
    		   $wanted_h,				 $flou_v*$t,  // Point 3 (x, y)
    
    		   $wanted_h+$flou_h*(1-$t),  $flou_v,	 // Point 4 (x, y)
    
    		   $wanted_h+$flou_h*(1-$t),  $wanted_v,  // Point 5 (x, y)
    
    		   $wanted_h,				 $wanted_v+$flou_v*(1-$t),  // Point 6 (x, y)
    
    		   $flou_h,				   $wanted_v+$flou_v*(1-$t),  // Point 7 (x, y)
    
    		   $flou_h*$t,				$wanted_v   // Point 8 (x, y)
    
    		 );
    
    	  imagepolygon($ombre, $points, 8, $colour);
    
    	}
    
    	for($i=0;$i<=$nStep;$i++) {
    
    	  $t = ((1.0*$i)/$nStep);
    
    	  $intensity = 255*$t*$t;
    
    	  $colour = imagecolorallocate($ombre, $intensity, $intensity, $intensity);
    
    	  imagefilledarc($ombre, $flou_h-1, $flou_v-1, 2*(1-$t)*$flou_h, 2*(1-$t)*$flou_v, 180, 268, $colour, IMG_ARC_PIE);
    
    	  imagefilledarc($ombre, $wanted_h, $flou_v-1, 2*(1-$t)*$flou_h, 2*(1-$t)*$flou_v, 270, 358, $colour, IMG_ARC_PIE);
    
    	  imagefilledarc($ombre, $wanted_h, $wanted_v, 2*(1-$t)*$flou_h, 2*(1-$t)*$flou_v, 0, 90, $colour, IMG_ARC_PIE);
    
    	  imagefilledarc($ombre, $flou_h-1, $wanted_v, 2*(1-$t)*$flou_h, 2*(1-$t)*$flou_v, 90, 180, $colour, IMG_ARC_PIE);
    
    	}
    
    
    	$colour = imagecolorallocate($ombre, 255, 255, 255);
    
    	imagefilledrectangle($ombre, $flou_h, $flou_v, $wanted_h, $wanted_v, $colour);
    
    	imagefilledrectangle($ombre, $flou_h*0.5-$dist_h, $flou_v*0.5-$dist_v, $wanted_h+$flou_h*0.5-1-$dist_h, $wanted_v+$flou_v*0.5-1-$dist_v, $colour);
    
    
    	$rgb = alpha_rotate($rgb, $ombre, $r, $PNGsupport);
    
    	imagealphablending($rgb, true);
    
    	imagesavealpha($rgb, true);
    
    
    	// deliver image and also write the cached file
    
    	if($PNGsupport) {
    
    	  header("Content-type: image/png");
    
    	  imagepng($rgb);
    
    	  if($use_cache) imagepng($rgb, $cache_directory.$cached_file);
    
    	} else {
    
    	  header("Content-type: image/jpg");
    
    	  imagejpeg($rgb);
    
    	  if($use_cache) imagejpeg($rgb, $cache_directory.$cached_file);
    
    	}
    
    
    	imagedestroy($image);
    
    	imagedestroy($thumbnail);
    
    	imagedestroy($rgb);
    
    	imagedestroy($ombre);
    
      }
    
    } else {
    
      //echo "File not found";
    
    }
    
    
    ?>

    je voudrais savoir :

    - quel dossier mettre en cache? (upload, ou un nouveau dossier)

    - pour le filename, puis-je mettre : <?php echo $repertoire_images?>/<?php echo $prod['image1'] ?>

    merci de votre aide ! :)

  6. olch


    Bonjour,

    Personnelement les clients me contactent pas mail et je gère les commandes de ce type hors site.

    Je pense que dans un sens c'est réalisable, mais je ne sais pas si c'est vraiment possible dans les calculs des frais de port, les frais sont si différent d'un pays a l'autre et selon le poids et volume que dans mon cas ce ne serait pas possible.

    Guillaume

  7. tiankris


    Merci beaucoup pour vos réponses.

    Olch, je suis tout à fais d'accord avec toi, et c'est ce que jai expliqué à "mes clients" qui préférent le système du numéro de facture.

    Ceci dit, j'ai trouvé la solution au problème que j'avais posé. Pour ceux que ca interesse, contactez moi, il n'y a que quelques lignes et variables à modifier dans facture.php

  8. amoz


    Bonjour a tous,

    Je cherche a mettre plusieurs prix en fonction de quantités sur mes produits dans ma boutique.

    Genre 100 cartes de visite à 30€,

    200 à 40€,

    500 à 50€

    1000 à 75€

    Un peu comme sur cette boutique (peel premium) http://www.defirev.com/achat/cat-matelas-bultex-97.html ou on peut choisir les matelas en fonction de la taille.

    Doit-on passer à la version peel premium ou cela est-il possible sur la beta 3.0 que j'utilise? Et comment faire pour l'integrer si c'est possible?

    Merci d'avance !

Twitter Advisto ecommerce

Facebook PEEL Shopping