Reloaded

Utilisateur open source
  • Compteur de contenus

    84
  • Inscrit(e) le

  • Dernière visite


Messages posté(e)s par Reloaded


  1. Bonjour,

    la seule solution propre est de modifier la classe caddie et certaines de ses méthodes (ajout,init,place etc) pour ajouter de nouveaux indice au tableau panier. La class caddie actuelle est codée en php4 il n'y a donc ps de notion de public et de private mais il suffit de déclarer une variable $prenom et une variable $message à l'image des autres variables et ensuite de modifier les méthodes ajout,init et place

    	function ajout($produitid, $quantite, $cId, $sId, $email_check, $liste_attribut,$prenom="",$message="") {
    
    		if(!isset($this->articles[0])){
    
    			$id=0;
    
    		}else{
    
    			$id=max(array_keys($this->articles))+1;
    
    		}
    
    		$this->articles[$id] = $produitid;
    
    		$this->quantite[$id] = $quantite;
    
    		$this->couleurId[$id] = $cId;
    
    		$this->tailleId[$id] = $sId;
    
    		$this->email_check[$id] = $email_check;
    
    		$this->id_attribut[$id] = $liste_attribut;
    
    		$this->prenom[$id] = $prenom;
    
    		$this->message[$id] = $message
    
    	}

    ensuite un peu partout tu devras gerer l'affichage de ce qui aura été saisi : pages caddie.php du repertoire modèles + différentes pages étapes de piement et consignation des infos dans la table des commandes/articles etc etc...


  2. Bonjur Veronique,

    Il semble que votre souci vienne de l'absence de la fonction javascript "gotodevise".

    cette fonction ressemble à ceci :

    <script type="text/javascript">
    
    function gotodevise(ident){
    
    document.location="<?=$_SERVER['PHP_SELF']?>?devise="+ident;
    
    }
    
    </script>


  3. Un fichier htaccess protégera en "amont" les possibilité d'injection SQL mais ne les rendra pas en théorie "impossible". J'avais d'ailleurs signalé il y'a plusieurs mois une faille en ce sens aux équipes "Peel". Elle a apparement été corrigée massivement sur les sites qui étaient en ligne à l'époque et dans les dernieres versions de Peel. Mais ceci n'est pas le principal "défaut" de Peel car malgré le travail effectué, malgré les améliorations annoncées, prendre le pari de baser son activité sur Peel sans un accompagnement solide, sans être soi même developpeur pro est un pari, pas spécialement impossible à relever, très risqué. L'ergonomie, la navigation, le controle des données, la qualité des fonctionnalités de relation clientèle etc, le back office aussi facile à utiliser qu'un tournevis cruciforme pour une vise à tête plate etc...


  4. Bonjour, je voudrais installer piwik pour avoir des statistiques de mon site sur peel shopping. Quelqu'un peut il m'indiquer sur quelles pages je doit installer le script. Merci

    Bonjour

    Une fois que vous aurez installé Piwik, dans la section sites vous llaez récuperer un code jvascript. Un marqueur qui sera à placer dans bas.php dans le repertoire modèles.

    Mais attention ! La taille de la base de données grandit tres rapidement. assurez vous que votre hébergeur vous propose une taille compatible avec l'utilisation de piwik.


  5. dans le fichier caddie.php du repertoire modèles, aux alentours de la ligne 336 vous avez ce code :

    if ($_SESSION['caddie']->total > 0) {
    
    	echo '
    
    			<div style="text-align:center">
    
    				<div class="bouton">
    
    					<a class="blanc" href="java script: frmsubmit(\'commande\');" onmouseover="return overlib(\'Vos frais de port sont offerts à partir de ' . fprix($seuil_total, true) . ' d\'achat\');" onmouseout="return nd();">' . ORDER . '</a>
    
    				</div>
    
    			</div>
    
    	';
    
    } else {
    
    	echo '
    
    			<div style="text-align:center"><p>' . MSG_SUGGEST . '</p></div>
    
    	';
    
    }
    il suffit, pour faire simple rapide et gratuit, de remplacer par exemple ce code par :
    if ($_SESSION['caddie']->total > MONTANT MINIMUM ) {
    
    	echo '
    
    			<div style="text-align:center">
    
    				<div class="bouton">
    
    					<a class="blanc" href="java script: frmsubmit(\'commande\');" onmouseover="return overlib(\'Vos frais de port sont offerts à partir de ' . fprix($seuil_total, true) . ' d\'achat\');" onmouseout="return nd();">' . ORDER . '</a>
    
    				</div>
    
    			</div>
    
    	';
    
    } else {
    
    	echo '
    
    			<div style="text-align:center"><p>Vous n'avez pas atteint le montant minimum requis pour passer commande</p></div>
    
    	';
    
    }

    en remplaçant MONTANT MINIMUM par la somme souhaitée avec un point pour les décimales si besoin.


  6. edit :

    Bon il faut remettre le $alerte_produit->stock.

    En fait, le souci vient du fait que pour l'article donné, il n'y pas de stock geré et que la requete sql ne vérifie pas l'existence d'un résultat avant de traiter le résultat.

    voici le code que vous pourriez tester pour la page alerte_liste.php

    <table width="100%" border=0 cellpadding="0" cellspacing=1>
    
    
    <tr>
    
    	<td class="entete" colspan='7'>Liste des alertes en cours</th>
    
    </tr>
    
    <?
    
    if (mysql_num_rows($qid) == 0) 
    
    			{
    
    			echo "<tr><td colspan=6 class=normal><b>Aucune alerte enregistr&eacute;e dans la base.</b></td></tr>"; }
    
    			else {
    
    ?>
    
    <tr bgcolor="#6699ff">
    
    	<td class="menu" align="center">Editer</td>
    
    	<td class="menu" align="center">Alerter</td>
    
    	<td class="menu" align="center">Supprimer</td>
    
    	<td class="menu" align="center">Date</td>
    
    	<td class="menu" align='center'>Client</td>
    
    	<td class="menu" align='center'>Produit</td>
    
    	<td class="menu" align='center'>Email</td>
    
    </tr>
    
    
    <? while ($r = mysql_fetch_object($qid)) {
    
    
    	$id_produit = $r->id_produit;
    
    
    	$nom_produit = stripslashes($r->nom_produit);
    
    
    	$qid_produit = mysql_query("
    
    	SELECT
    
    		stock
    
    	FROM peel_stocks
    
    
    	WHERE produit_id = '$id_produit'
    
    	");
    
    
    	$alerte_produit = mysql_fetch_object($qid_produit);
    
    	if(mysql_num_rows($alerte_produit)>0) {
    
    ?>
    
    <tr>
    
    	<td class=petit><a class=petit href="<?=$_SERVER['PHP_SELF']?>?mode=details&id=<?=$r->id ?>"><img src="<?=$wwwroot?>/bo/images/b_edit.png" alt="" border="0"></a></td>
    
    	<td class=petit align=center>
    
    	<?
    
    	if ($alerte_produit->stock > 0) {
    
    	?>
    
    	<a class=petit href="<?=$_SERVER['PHP_SELF']?>?mode=email&id=<?=$r->id ?>"><img src="../images/mail.gif" alt="" border="0">
    
    	<?
    
    
    	} else {
    
    
    	echo "non dispo";
    
    
    	}?></td>
    
    
    	<td class=petit align=center><a class=petit href="<?=$_SERVER['PHP_SELF']?>?mode=suppr&id=<?=$r->id ?>"><img src="<?=$wwwroot?>/bo/images/b_drop.png" alt="" border="0"></td>
    
    
    	<td class=petit><?echo return_date_fr($r->datestamp);?></td>
    
    
    	<td class=petit><?if ($r->id_utilisateur == 0) {echo "non inscrit";} else {echo $r->email;}?></td>
    
    
    	<td class=petit><a href="produits.php?mode=modif&id=<?=$r->id_produit;?>" class="petit"><?=stripslashes($r->nom_produit);?></a></td>
    
    
    	<td class=petit><?=$r->email ?></td>
    
    
    </tr>
    
    <? 
    
    }
    
    }
    
    } ?>
    
    
    </table>


  7. Bonjour

    la fonctionnalité des alertes est un peu plus que "bancale" hélas. Elle nécessite d'etre refaite presque à 100%.

    La requete sql d'origine de $alerte_produit retourne un tableau (un array) et la page demande à accéder à un attribut d'un objet donc forcément ça peut pas coller.

    ce n'est pas garanti que ça résolve tous les problèmes mais ligne 43 du fichier alerte_liste.php, remplacez alerte_produit->stock par $alerte_produit['stock'].

Twitter Advisto ecommerce

Facebook PEEL Shopping