macao45
Utilisateur open source-
Compteur de contenus
302 -
Inscrit(e) le
-
Dernière visite
Messages posté(e)s par macao45
-
-
et voiliiiiiiiiiiiiiii
bon dans mon essai.php il faut changer la form
marche<form method="post" action="../caddie_affichage.php" >et du coup dans caddie_affichage.php
il faut mettre
include("../configuration.inc.php");foreach($_REQUEST['qte'] as $key => $value){
if ($value !="0"){
$_SESSION['caddie']->ajout($key, $value);
}
}
$_SESSION['caddie']->recalc_total();
voila ... bonne ... heu tres bonne journée :)
-
je bricolle 2 3 trucs et je te donne ça tres vite :)
-
pas de quoi ...
de plus on peut finalement faire du + et du - dans le recap de caddie avant de passer en caisse ...
c'etait donc pas si comliqué ;)
par contre la décos ... j'ai fait vraiment light :)
-
une page essai.php dans /achat/modeles
<?include("../../configuration.inc.php");
echo "<pre>";
print_r($_REQUEST);
echo "</pre>";
$DOC_TITLE = "[PEEL.FR]";
include("$repertoire_modele/haut.php");
$sql="select * from peel_produits";
$qq=mysql_query($sql);
?>
<table class="tabprod" width="740" cellpadding="5" cellspacing="0" border=2>
<form method="post" action="../caddie_ajout.php" >
<?php
while ($prod=mysql_fetch_array($qq)){
?>
<tr>
<td class="black" valign="top"><?php echo $prod[nom];?>
<b>Quantité : </b>
<select name="qte[<?php echo $prod[id];?>]" class="formulaire1">
<option value="0">0</option>
<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>
</td>
</tr>
<?php
}
?>
<tr><TD><input type="submit" name="ajout2"></TD></tr>
</form>
</table>
<?
include("$repertoire_modele/bas.php");
reste à traiter le $_REQUEST dans une page pour alimenter le caddie
dans caddie_ajout.php
ajouter en bas du fichier
foreach($_REQUEST['qte'] as $key => $value){if ($value !="0"){
$_SESSION['caddie']->ajout($key, $value);
}
}
chez moi ça marche ... apres tu vire le echo pre $_REQUEST du haut :)
-
la form de base c'est pas trop un pb ... par contre le traitement d'ajout ... faut le revoir car
<form method="POST" action="<?=$wwwroot?>/achat/caddie_ajout.php" name="ajout<?=$prod['id'] ?>">donc l'ajout au caddie ce fait par la class caddie qui s'appuit sur l'id du produit
pour la page un truc de ce style:
<form method="POST" action="<?=$wwwroot?>/achat/caddie_ajout.php" name="ajoutnew">
<?php
$sql="select * from peel_produits where etat='1'";
$query=mysql_query($sql);
while ($liste=mysql_fetch_array($query)){
?>
<input type=hidden name=id[] value=<?php echo $liste[id];?> ><?php echo $liste[nom];?>
<input type=texte name=qte[] value='1' >
}
?>
<input type=submit name=ajouter>
</form>
et decortiquer le $_REQUEST pour avoir une liste des id et des quantites ;)
par contre au niveau caddie la gestion de l'ajout et retrait au moment de la validation du caddie ... je pense qu'il faut oublier !! ça risque d'etre une usine à gaz !! ;)
j'ai fait un truc mais avec des produits composé de produits ( des kits quoi sur Izzotek ) mais cela veu dire que 1 kit égal un nombre identique de chaque produits composant ce produits ... c'est peut etre pas ça que tu souhaite ?? :)
-
<?php
$l=0;
$sql="select * from peel_categories where parent_id ='0' ";
$query=mysql_query($sql);
echo "<table><tr>";
while ($list_cat=mysql_fetch_array($query)){
echo "<td><a href=".$wwwroot."/achat/index.php?catid=".$list_cat['id']." class=normal>".$list_cat['nom_fr']."</a> -</td>";
$l++;
if ( $l >5){
echo "</tr><tr>";
$l=0;
}
}
echo "</tr></table>"; ?>
comme ça il ya 5 lien par ligne :)
-
en plus a vue de nez dans la prenium il y a la version de langue ... dsl j'ai pas cette version :)
-
$sql="select * from peel_categories where parent_id ='0' ";
$query=mysql_query($sql);
echo "<table><tr>";
while ($list_cat=mysql_fetch_array($query)){
echo "<td><a href=".$wwwroot."/achat/index.php?catid=".$list_cat[id]." class=normal>".$liste_cat['nom']."</a><:td>";
}
echo "</tr></table>";
ça doit faire l'affaire ......... :)
-
spplus est simple à mettre en place à condition d'avoir acces au repertoire cgi-bin de son hebergeur
il suffit de mettre le montant , la devise , le code vendeur, l'email acheteur et la reference id de lacommande
-
fais plutot une table sql suplementaire avec les id de tes produits et les tailles ou les couleurs
CREATE TABLE IF NOT EXISTS `peel_prod_qte` (
`ref_id` int(7) NOT NULL,
`taille` int(7) NOT NULL,
`qte` int(7) NOT NULL,
PRIMARY KEY (`ref_id`,`taille`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-
la suite ..
dans la base de donnée table peel_commandes_articles virer la clef primaire
dans fonctions.php
ajouter ligne 524 ça
$commande['liste'] = $frm['liste'];dans /achat/modeles/achat_confirmation.php a partir de la ligne 82 jusque la fin de la form mettre ça
<?php$ensemble_total_ht = 0;
$listephoto="";
$ensemble_total_ttc = 0;
$ensemble_total_ecotaxe = 0;
$expedition = 0;
$ensemble_total = 0;
foreach ($_SESSION['caddie']->articles as $produitid => $quantite) {
$temp=explode("AAA",$produitid);
$prodtid=$temp[0];
$photo=$temp[1];
$listephoto .= $photo . "|";
/* Enlève la virgule du début */
$listephoto=substr($listephoto, 1);
$sql="SELECT p.id, p.reference, p.promotion, p.descriptif, p.image1, e.prix_ttc AS ecotaxe
, 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.id ='".$prodtid."'";
$prod=mysql_fetch_array(mysql_query($sql));
//$quantite = $_SESSION['caddie']->articles[$prod['id']];
$promotion = $prod['promotion'] ;
$prix = $prod['prix_vente'] ;
$prix_ht = $prod['prix_vente'] / (1+19.6 / 100);
$total_ttc = $prix * $quantite;
$total_ht = $prix_ht * $quantite;
$ecotaxe = fprix($prod['ecotaxe']);
$total_ecotaxe = $prod['ecotaxe'] * $quantite;
$ensemble_total_ht += $total_ht;
$ensemble_total_ttc += $total_ttc;
$ensemble_total_ecotaxe += $total_ecotaxe;
$tva = $ensemble_total_ttc - $ensemble_total_ht ;
switch ($transport) {
case "normal" :
$expedition = $normal;
break;
case "express" :
$expedition = $express;
break;
}
?>
<tr>
<td class="normal"><?php echo $prod['reference'] ?></td>
<td class="normal">
<?php echo $photo; ?>
</td>
<td class="normal" align="right">
<?php
echo fprix($prix)." € ";
echo ($ecotaxe != 0) ? "<br /><em><font class=\"petit\">dont eco-participation : $ecotaxe €</font></em>" : "";
echo (fprix($prod['prix_vente']) != fprix($prod['prix_catalogue'])) ? "<br /><em><font class=\"petit\">dont remise : ".$prod['promotion']." %</font></em>" : "";
?>
</td>
<td class="normal" align="center"><?php echo $quantite?></td>
<td class="normal" align="right" colspan="2">
<?php echo fprix($total_ttc) ?> €
</td>
</tr>
<?php } ?>
<tr>
<td colspan="5"></td>
</tr>
<tr>
<td colspan="4" class="label" align="right"">Total H.T. :</td>
<td class="normal" align="right"><b><?php echo fprix($ensemble_total_ht) ?> €</b></td>
</tr>
<tr>
<td colspan="4" class="label" align="right">TVA :</td>
<td class="normal" align="right"><b><?php echo fprix($tva) ?> €</b></td>
</tr>
<tr>
<td colspan="4" class="label" align="right">Frais d'expédition :</td>
<td class="normal" align="right"><b><?php echo fprix($expedition); ?> €</b></td>
<td class="normal"></td>
</tr>
<tr>
<td colspan="4" class="label" align="right">Total T.T.C :</td>
<td class="normal" align="right"><b>
<?php
$caddie_total = $ensemble_total_ttc + $expedition;
echo fprix($caddie_total);
?> €</b></td>
</tr>
<?php
if ($ensemble_total_ecotaxe != 0) { ?>
<tr>
<td colspan="4" class="label" align="right">dont total ecotaxe T.T.C:</td>
<td class="normal" align="right"><b>
<?php
echo fprix($ensemble_total_ecotaxe);
?> €</b></td>
</tr>
<? } ?>
<tr><td colspan="5" align="center">
<form name="entryform" action="<?php echo $wwwroot?>/achat/fin_commande.php" method="post">
<input type="texte" name="liste" value="<?php echo $listephoto;?>">
<input type="submit" value="Valider la commande" class="bouton">
</form>
je crois que j'ai fais le toiur ... saufs quelques details je pense que c'est bon :)
-
alors ..
je suis parti du principe que des personnes venaient sur ton site pour commader des photos d'un mariage auquel ils ont été ....
donc quand ils s'inscrivent sur le site , dans societe il faut mettre le nom de famille pour le mariage
de ton coté toutes les photos serront stokées dans le repertoire images/nom_de_la_famille
quelques news !!! dans index.php de l'accueil rajouter cette fonction
function print_photos(){global $wwwroot, $repertoire_modele,$rep_famille,$dirroot;
$famille=strtoupper($_SESSION['utilisateur']['societe']);
$f="";
$tmp="";
$rep = $dirroot."/images/".$famille;
$dir = opendir($rep);
while ($nom_foto = readdir($dir)) {
if(is_file($rep."/".$nom_foto)) {
echo "<img src='".$rep."/".$nom_foto."' width='100' alt=''>";
$tmp=explode(".",$nom_foto);
$nom_foto=$tmp[0];
$requete = "SELECT id,nom FROM peel_produits ";
$qid = mysql_query($requete) or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
while ($prod = mysql_fetch_array($qid)) {
?>
<form method="post" action="<?php echo $wwwroot?>/achat/caddie_ajout.php" name="ajout<?php echo $prod['id'];?>AAA<?php echo $nom_foto; ?>">
<b>Quantité : </b>
<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="texte" name="id" value="<?php echo $prod['id'];?>AAA<?php echo $nom_foto; ?>" />
Photos en <?php echo $prod['nom'];?> <a class=normal" href="java script:document.ajout<?php echo $prod['id];?>AAA<?php echo $nom_foto; ?>.submit()">
Ajouter au caddie
</a>
</form>
<?
}
}
}
et a la place de print_on_specials():
mettre
if (est_identifie()) {print_photos();
}
ensuite dans /lib/class/caddie.php
dans la derniere fonction j'ai fais deux trois modif
function recupere_produitid_list() {/* Renvoie la liste des produits délimités par des virgules */
$produitid_list = "";
foreach ($this->articles as $produitid => $quantite) {
$temp=explode("AAA",$produitid);
$produitid=$temp[0];
$produitid_list .= ",'" . $produitid . "'";
}
/* Enlève la virgule du début */
return substr($produitid_list, 1);
}
function recalc_total() {
/* Recalcule le prix total des articles du caddie */
$this->total = 0;
$in_clause = $this->recupere_produitid_list();
if (empty($in_clause)) {
return;
}
foreach ($this->articles as $produitid => $quantite) {
$temp=explode("AAA",$produitid);
$produitid=$temp[0];
$requete ="SELECT p.id, p.nom, p.promotion, p.descriptif, p.image1, e.prix_ttc AS ecotaxe
, 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.id ='".$produitid."'";
$qid = mysql_fetch_array(mysql_query($requete));
$this->total += $quantite * $qid['prix_vente'];
}
/*
$requete ="SELECT p.id, p.nom, p.promotion, p.descriptif, p.image1, e.prix_ttc AS ecotaxe
, 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.id IN ($in_clause)";
$qid = mysql_query($requete);
if ($qid) {
if (mysql_num_rows($qid) > 0) {
while ($produit = mysql_fetch_array($qid)) {
//echo $produit['id'];
//$this->total += $this->articles[$produit['id']] * $produit['prix_vente'];
$this->total +=$produit['prix_vente'];
}
}
}
*/
}
reste à traiter le caddie pour envoyer la note aux clients et toi savoir ce que tu as à tirer comme photos
a bientot pour la suite
-
pareil pour moi si tu me parles profondeur de champ et ouverture temps de pose :)
n'empeche que je regarde et je post .... si tu as des questions pas de soucis !!
-
faut aussi gerer un espace privé pour chaque mariage ... mais ça c'est pluis simple
sinon dans /achat/index.php
au lieu de la requete sql il faut mettre ( meme fonction que dans un autres post d'ailleur )
$rep = "../famille_toto/";$dir = opendir($rep);
while ($nom_foto = readdir($dir)) {
if(is_file($rep.$f)) {
echo "<img src='".$rep."/".$f."' width=100 alt=''>";
?>
<form method="post" action="<?php echo $wwwroot?>/achat/caddie_ajout.php" name="ajout<?php echo $nom_foto; ?>">
<b>Quantité : </b>
<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="foto" value="<?php echo $nom_foto; ?>" />
<a class="normal" href="java script:document.ajout1.submit()">
10X15
</a>
<a class="normal" href="java script:document.ajout2.submit()">
20X30
</a>
<a class="normal" href="java script:document.ajout3.submit()">
30X40
</a>
</form>
<?php
}
}
je remplace l'id par un numéro ( 1 2 ou 3 qui correspond aux trois produits ) et je post le nom de la photo ( foto c'est plus court ...)
enfin bref un truc dans ce genre ...
mais apres il y a le caddi et le $_SESSION a mettre en place mais ça doit etre faisable.... je continurais :)
-
interressant comme idée ....
par contre il faut que tu mette en filigramme le nom de ta boite pour pas que les photos soient pompées sans t'etre payé !!
sinon un explorateur de repertoire et des prix pour trois produits et un caddie de quantité ....
je cogite et je te tiens au courrant ... c'est sympas comme challenge ça !! :)
-
-
tu n'as pas a faire d'echo de cette fonction !!
la fonction ne te renvoit rien ( enfin vue sa structure ..)
il suffit de l'appeler et elle te triate les parameteres rentré ... de plus il te manque des parametres dans ton appel
<?php
if ($_REQUEST['go'] == 'traite' ){
$f=$_REQUEST['image'];
createThumbWithOver($img_src='./images/'.$f.'',$w_thumb=195,$h_thumb=0,$border=2,$radial=10,$alpha=50);
}
?>
<a href="<?php $_SERVER['PHP_SELF'];?>?go=traite&image=ton_image.jpg" >faire image </a>
un truc dans ce style quoi .... :)
-
ça donne quelque chose comme ça $f etant le fichier image
$rep = "../images/";
$dir = opendir($rep);
while ($f = readdir($dir)) {
if(is_file($rep.$f)) {
function createThumbWithOver($img_src='./images/'.$f.'',$w_thumb=195,$h_thumb=0,$border=2,$radial=10,$alpha=50);
}
}
:)
-
je regarde ça des demain
le principe est de faire une boucle sur le repertoire sur lequel tu as tes images ( avec fopen et while )
apres tu recupere le nom de chaque fichier dans ta boucle et tu le traite avec ta fonction.
c'est a dire ici
function createThumbWithOver($img_src='./images/dell_d600.jpg',$w_thumb=195,$h_thumb=0,$border=2,$radial=10,$alpha=50){
il faut remplacer ce nom de fichier par le repertoire et le nom de l'images
elle est complete ta fonction !!! y a meme les images en hover pour les liens!!!
-
pour retailler des images à la volée il faut deja qu'elles soient chargées pour les miniaturiser ou les trafiquer!!!!
donc quoi que tu fasse les images de grandes tailles serront de grands poid!!
si en plus tu en a plusieurs dans une seule et meme page .........c'est la mort :)
trove un logiciel qui fait de la retaille en masse avec changement de nom ( sous windows je connais pas .. j'ai pas !!! mais sous linux il y a Krita )
-
2 hebergeurs !!!
ha ba non marche poa mon truc :)
désolé j'avais pas compris la question alors
par contre tu peux avoir la base sur un site et la boutique sur un autre ... ça ça marche sauf si ton hebergeur considere que tu es localhost ...la c'est moins bon !!
-
j'avais bien dis que ça pouvais aider ..... sauf dans le cas des articles ajouté au caddie...
la c'est dans $_SESSION qu'il faut regarder ...a le place de $_REQUEST :)
-
je connaissais meme pas .....
mais je vais surement y jeter un zieux :)
-
un petit drapeau ou du texte avec un lien ...
<a href='<?php echo $wwwroot;?>?lang=en'>Anglais</a>
et apres le petit bout de code du post precedent
c'est aussi ce que j'ai mis LA
Affichage du caddie erroné
dans PEEL SHOPPING : logiciel open source de boutique en ligne
Posté(e) · Signaler ce message
ton calcul de caddie en a un coup dans les carreaux !!!
il ne fait qu'ajouter ...jamais soustraire !!! ( bonne facon de faire de la vente ça !! ;) )
tu peux mettre ton ajout_caddi.php qui est dans achat SVP ?
c'est franchement louche ton truc :)
c'est le calcul des element de ton caddi qui foire ... dans /lib/caddie/cadi.php qje pense qu'il y a un truc
en plus si on met la ligne à 0 en quantité l'article reste ..... la ligne de part pas !!!