Gilles Boussin

Administrateur PEEL
  • Compteur de contenus

    16 264
  • Inscrit(e) le

  • Dernière visite


Tout ce qui a été posté par Gilles Boussin

  1. Gilles Boussin a ajouté un message dans un sujet  Bug gestion de l'ordre des pays   

    Bonjour shogun,

    Si je prend l'exemple du répertoire blog, dans modeles/blog/caddie.php, localisez l'appel à la variable : COUNTRY_SHIP

    3 lignes plus loin, on doit avoir la requête qui va chercher les pays en base de données.
    Celle-ci doit être :

    $sqlPays = 'SELECT id, pays_' . $_SESSION['langue'] . ', zone FROM peel_pays WHERE etat = "1" ORDER BY position, pays_' . $_SESSION['langue'];


    Cordialement,
    • 0
  2. Gilles Boussin a ajouté un message dans un sujet  History back avec IE6 sur la page achat_maintenant   

    Bonsoir,

    Premiers éléments de réponse :

    - IE6 représente moins de 10% du marché français et non pas 50 !

    - IE6 correspond à des tonnes de versions différentes. Un IE6 sur un PC fonctionne rarement pareil que sur un autre, à cause des très nombreux divers patchs de sécurité

    - Jean-Hervé regardera ce sujet en début de semaine et fournira une réponse quand à ce problème que vous avez

    - il ne faut pas confondre la logique de mise à jour d'une application fermée, ou d'application grand public, et celle d'une application professionnelle open source sur laquelle plus de 95% modifient le code open source. Nous ne faisons pas de patch de mise à jour automatique, car ils ne concerneraient que quelques pourcents de la communauté PEEL, et que ça représente un lourd coût de développement pour faire des patch qui fonctionnent en aveugle de manière totalement fiable. Les personnes ayant modifié leur boutique (sans même s'en souvenir parfois !) ne comprendraient pas que les patchs posent problème, ou refusent de s'exécuter !

    Enfin, pour répondre à votre question de possibilité d'avoir un prix avantageux pour des mises à jour (dont le côté manuel en fonction des développements spécifiques peut être fait par vous ou par nous), comme je vous l'ai mis dans le sujet http://forum.peel.fr/Corrections-bugs-general-t3378.html nous sommes à votre disposition pour répondre à votre besoin.

    Dans la version 5.5, nous avons augmenté la modularité du code, et dans la 5.6 nous avons continué dans la structuration des librairies de fonctions
    Cela permet de plus facilement mettre à jour certaines parties isolément du reste du code.
    Comme vous pouvez le constater, nous renforçons au fur et à mesure à la fois les mesures structurelles pour faciliter les évolutions des boutiques, et aussi l'accompagnement, que ce soit via le forum et via des contrats de maintenance.
    • 0
  3. Gilles Boussin a ajouté un message dans un sujet  [Tutorial] Migration de PEEL Shopping 4.0 vers 5.0   

    Si les tables de stock n'existent pas, exécutez dans phpmyadmin :

    CREATE TABLE IF NOT EXISTS `peel_stocks_temp` (
    `produit_id` int(11) NOT NULL DEFAULT '0',
    `taille_id` int(11) NOT NULL DEFAULT '0',
    `couleur_id` int(11) NOT NULL DEFAULT '0',
    `stock` int(11) NOT NULL DEFAULT '0',
    `o_timestamp` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
    KEY `produit_id` (`produit_id`),
    KEY `taille_id` (`taille_id`),
    KEY `couleur_id` (`couleur_id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;


    CREATE TABLE IF NOT EXISTS `peel_stocks` (
    `produit_id` int(11) NOT NULL DEFAULT '0',
    `taille_id` int(11) NOT NULL DEFAULT '0',
    `couleur_id` int(11) NOT NULL DEFAULT '0',
    `stock` int(11) NOT NULL DEFAULT '0'
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
    • 0
  4. Gilles Boussin a ajouté un message dans un sujet  de v5 vers v5.6   

    Bonjour,

    Si les tables de stock n'existent pas, exécutez dans phpmyadmin :

    CREATE TABLE IF NOT EXISTS `peel_stocks_temp` (
    `produit_id` int(11) NOT NULL DEFAULT '0',
    `taille_id` int(11) NOT NULL DEFAULT '0',
    `couleur_id` int(11) NOT NULL DEFAULT '0',
    `stock` int(11) NOT NULL DEFAULT '0',
    `o_timestamp` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
    KEY `produit_id` (`produit_id`),
    KEY `taille_id` (`taille_id`),
    KEY `couleur_id` (`couleur_id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;


    CREATE TABLE IF NOT EXISTS `peel_stocks` (
    `produit_id` int(11) NOT NULL DEFAULT '0',
    `taille_id` int(11) NOT NULL DEFAULT '0',
    `couleur_id` int(11) NOT NULL DEFAULT '0',
    `stock` int(11) NOT NULL DEFAULT '0'
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;

    Je rajoute cette info dans le tutorial de migration.
    • 0
  5. Gilles Boussin a ajouté un message dans un sujet  Remplacer les ereg par des preg_match   

    Voici une liste quasi exhaustive des changements à effectuer pour remplacer les ereg dans le contexte d'une compatibilité PHP 5.3 ou 6 pour de vieilles versions de PEEL PREMIUM <= 5.41 :

    Index: E:/sites/peel_premium/trunk/administrer/utilisateurs.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/administrer/utilisateurs.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/administrer/utilisateurs.php (revision 4190)
    @@ -180,7 +180,7 @@
    $commercial = valide($frm['commercial']);
    $remise_percent = (float)$frm['remise_percent'];
    $password = MDP();
    - $naissance = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$', '\\3-\\2-\\1', $frm['naissance']);
    + $naissance = preg_replace('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{2,4})$/', '$3-$2-$1', $frm['naissance']);

    $qid = mysql_query("
    INSERT INTO peel_utilisateurs (
    @@ -274,7 +274,7 @@
    $newsletter = valide($frm['newsletter']);
    $commercial = valide($frm['commercial']);
    $remise_percent = (float)$frm['remise_percent'];
    - $naissance = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$', '\\3-\\2-\\1', $frm['naissance']);
    + $naissance = preg_replace('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{2,4})$/', '$3-$2-$1', $frm['naissance']);

    $qid = mysql_query("
    UPDATE peel_utilisateurs SET
    Index: E:/sites/peel_premium/trunk/administrer/modeles/utilisateur_form.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/administrer/modeles/utilisateur_form.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/administrer/modeles/utilisateur_form.php (revision 4190)
    @@ -173,7 +173,7 @@
    }
    }

    -$frm['naissance'] = ereg_replace('^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$', '\\3/\\2/\\1', $frm['naissance']);
    +$frm['naissance'] = preg_replace('/^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$/', '$3/$2/$1', $frm['naissance']);

    echo '
    </select>
    Index: E:/sites/peel_premium/trunk/administrer/modeles/commande_details.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/administrer/modeles/commande_details.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/administrer/modeles/commande_details.php (revision 4190)
    @@ -18,7 +18,7 @@
    $res_ecom = mysql_query($sql_ecom);
    $ecom = mysql_fetch_object($res_ecom);

    -$date_facture = ereg_replace('^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$', '\\3/\\2/\\1', $commande->a_timestamp);
    +$date_facture = preg_replace('/^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$/', '$3/$2/$1', $commande->a_timestamp);
    $sql = "SELECT format_numero_facture FROM `peel_sites` WHERE id = '".$_SESSION['ecom']['id']."'";
    $query = mysql_query($sql);
    $result = mysql_fetch_assoc($query);
    Index: E:/sites/peel_premium/trunk/administrer/mysql2csv.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/administrer/mysql2csv.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/administrer/mysql2csv.php (revision 4190)
    @@ -120,10 +120,10 @@

    Function TrimExt($Src)
    {
    - $Src = ereg_replace("(\r\n){0,15}$", "", $Src);
    - $Src = ereg_replace("^(\r\n){0,15}", "", $Src);
    - $Src = ereg_replace("(\n){0,15}$", "", $Src);
    - $Src = ereg_replace("^(\n){0,15}", "", $Src);
    + $Src = preg_replace("/(\r\n){0,15}$/", "", $Src);
    + $Src = preg_replace("/^(\r\n){0,15}/", "", $Src);
    + $Src = preg_replace("/(\n){0,15}$/", "", $Src);
    + $Src = preg_replace("/^(\n){0,15}/", "", $Src);
    $Src = trim($Src);
    return $Src;
    }
    Index: E:/sites/peel_premium/trunk/administrer/import_expeditor.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/administrer/import_expeditor.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/administrer/import_expeditor.php (revision 4190)
    @@ -145,10 +145,10 @@

    Function TrimExt($Src)
    {
    - $Src = ereg_replace("(\r\n){0,15}$", "", $Src);
    - $Src = ereg_replace("^(\r\n){0,15}", "", $Src);
    - $Src = ereg_replace("(\n){0,15}$", "", $Src);
    - $Src = ereg_replace("^(\n){0,15}", "", $Src);
    + $Src = preg_replace("/(\r\n){0,15}$/", "", $Src);
    + $Src = preg_replace("/^(\r\n){0,15}/", "", $Src);
    + $Src = preg_replace("/(\n){0,15}$/", "", $Src);
    + $Src = preg_replace("/^(\n){0,15}/", "", $Src);
    $Src = trim($Src);
    return $Src;
    }
    Index: E:/sites/peel_premium/trunk/administrer/codes_promos.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/administrer/codes_promos.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/administrer/codes_promos.php (revision 4190)
    @@ -102,8 +102,8 @@
    {
    global $frm, $wwwroot;

    - $frm['date_debut'] = ereg_replace('^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$', '\\3/\\2/\\1', vb($frm['date_debut']));
    - $frm['date_fin'] = ereg_replace('^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$', '\\3/\\2/\\1', vb($frm['date_fin']));
    + $frm['date_debut'] = preg_replace('/^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$/', '$3/$2/$1', vb($frm['date_debut']));
    + $frm['date_fin'] = preg_replace('/^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$/', '$3/$2/$1', vb($frm['date_fin']));
    echo '
    <form name="entryform" method="post" action="'. $_SERVER['PHP_SELF'].'?start=0">
    <input type="hidden" name="mode" value="'. $frm["nouveau_mode"].'" />
    @@ -208,8 +208,8 @@

    function insere_code_promo($frm)
    {
    - $date_debut = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$', '\\3-\\2-\\1', $frm["date_debut"]);
    - $date_fin = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$', '\\3-\\2-\\1', $frm["date_fin"]);
    + $date_debut = preg_replace('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{2,4})$/', '$3-$2-$1', $frm["date_debut"]);
    + $date_fin = preg_replace('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{2,4})$/', '$3-$2-$1', $frm["date_fin"]);

    $sql = "
    INSERT INTO peel_codes_promos (
    @@ -247,8 +247,8 @@

    function maj_code_promo($id, $frm)
    {
    - $date_debut = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$', '\\3-\\2-\\1', $frm["date_debut"]);
    - $date_fin = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$', '\\3-\\2-\\1', $frm["date_fin"]);
    + $date_debut = preg_replace('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{2,4})$/', '$3-$2-$1', $frm["date_debut"]);
    + $date_fin = preg_replace('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{2,4})$/', '$3-$2-$1', $frm["date_fin"]);
    $qid = mysql_query("
    UPDATE peel_codes_promos SET
    nom = '" . addslashes(strtoupper($frm['nom'])) . "'
    Index: E:/sites/peel_premium/trunk/administrer/commandes.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/administrer/commandes.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/administrer/commandes.php (revision 4190)
    @@ -230,7 +230,7 @@
    }
    global $wwwroot;
    if ($frm['a_timestamp'] != "00/00/0000") {
    - $date_facture = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$', '\\3-\\2-\\1', $frm['a_timestamp']);
    + $date_facture = preg_replace('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{2,4})$/', '$3-$2-$1', $frm['a_timestamp']);
    mysql_query("UPDATE peel_commandes SET a_timestamp = '" . $date_facture . "' WHERE id = '" . $frm['id'] . "'")or DIE(SQL_CONNECTION_ERROR . __LINE__ . '.<p>' . MYSQL_ERROR());
    }
    mysql_query("UPDATE peel_commandes SET id_statut_paiement = '" . intval($frm['statut_paiement']) . "', id_statut_livraison = '" . intval($frm['statut_livraison']) . "' WHERE id = '" . intval($frm['id']) . "'") or DIE(SQL_CONNECTION_ERROR . __LINE__ . '.<p>' . MYSQL_ERROR());
    Index: E:/sites/peel_premium/trunk/modeles/standard/enregistrement.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/standard/enregistrement.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/modeles/standard/enregistrement.php (revision 4190)
    @@ -13,7 +13,7 @@
    //


    -$frm['naissance'] = ereg_replace('^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$', '\\3/\\2/\\1', vb($frm['naissance']));
    +$frm['naissance'] = preg_replace('/^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$/', '$3/$2/$1', vb($frm['naissance']));

    echo "
    <h2>" . FIRST_REGISTER_TITLE . "</h2>
    Index: E:/sites/peel_premium/trunk/modeles/standard/template.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/standard/template.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/modeles/standard/template.php (revision 4190)
    @@ -859,7 +859,7 @@
    <input type=\"hidden\" name=\"option\" value=\"0\" />
    <input type=\"hidden\" name=\"qte\" value=\"1\" />";

    - if (!ereg('produit_details.php', $_SERVER['PHP_SELF'])) {
    + if (!preg_match('/produit_details\.php/', $_SERVER['PHP_SELF'])) {
    echo "<div class=\"bouton\">";
    echo "<a class=\"blanc\" href=\"java script:document." . $form . "ajout" . $prodId . ".submit()\" title=\"" . ADD_CART . "\">";
    echo ADD_CART;
    Index: E:/sites/peel_premium/trunk/modeles/standard/change_param_form.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/standard/change_param_form.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/modeles/standard/change_param_form.php (revision 4190)
    @@ -16,7 +16,7 @@
    if (!empty($message_erreur)) {
    echo '<font color="#CC0000"><b>' . $message_erreur . "</b></font>\n";
    }
    -$frm['naissance'] = ereg_replace('^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$', '\\3/\\2/\\1', $frm['naissance']);
    +$frm['naissance'] = preg_replace('/^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$/', '$3/$2/$1', $frm['naissance']);

    echo '<h2>' . CHANGE_PARAMS . '</h2>
    <form name="entryform" id="entryform" method="post" action="'. $_SERVER['PHP_SELF'].'">
    Index: E:/sites/peel_premium/trunk/modeles/blog/enregistrement.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/blog/enregistrement.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/modeles/blog/enregistrement.php (revision 4190)
    @@ -13,7 +13,7 @@
    //


    -$frm['naissance'] = ereg_replace('^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$', '\\3/\\2/\\1', vb($frm['naissance']));
    +$frm['naissance'] = preg_replace('/^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$/', '$3/$2/$1', vb($frm['naissance']));

    echo "<h2>" . FIRST_REGISTER_TITLE . "</h2>
    <p>" . FIRST_REGISTER_TEXT . "</p>
    Index: E:/sites/peel_premium/trunk/modeles/blog/change_param_form.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/blog/change_param_form.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/modeles/blog/change_param_form.php (revision 4190)
    @@ -18,7 +18,7 @@
    echo '<font color="#CC0000"><b>' . $message_erreur . "</b></font>\n";
    }

    -$frm['naissance'] = ereg_replace('^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$', '\\3/\\2/\\1', $frm['naissance']);
    +$frm['naissance'] = preg_replace('/^([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})$/', '$3/$2/$1', $frm['naissance']);

    echo "<h2>" . CHANGE_PARAMS . '</h2>

    Index: E:/sites/peel_premium/trunk/search.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/search.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/search.php (revision 4190)
    @@ -78,9 +78,9 @@

    echo "<h2>" . RESULT_SEARCH . "</h2><br />";

    - $compat_search_text=getEregConditionCompatAccents($searchtext);
    + $compat_search_text=getPregConditionCompatAccents($searchtext);
    while ($prod = mysql_fetch_array($RESULT)) {
    - $nom = eregi_replace(getEregConditionCompatAccents($searchtext), '<b style="background-color:#FFFF00">' . "\\0" . '</b>', $prod['nom_' . $_SESSION['langue']]);
    + $nom = preg_replace('/' . getPregConditionCompatAccents($searchtext) . '/i', '<b style="background-color:#FFFF00">' . "\\0" . '</b>', $prod['nom_' . $_SESSION['langue']]);
    if(strlen($prod['descriptif_' . $_SESSION['langue']])>40 || strlen($prod['description_' . $_SESSION['langue']])<40){
    $lines=explode("\n",html_entity_decode($prod['descriptif_' . $_SESSION['langue']]));
    }else{
    @@ -94,7 +94,7 @@
    $descriptif_array=array();
    foreach($lines as $this_line){
    if(!empty($this_line) && strpos($this_line,'</a>')===false){
    - $descriptif_array[]= eregi_replace($compat_search_text, '<b style="background-color:#FFFF00">' . "\\0" . '</b>', $this_line);
    + $descriptif_array[]= preg_replace('/' . $compat_search_text . '/i', '<b style="background-color:#FFFF00">' . "\\0" . '</b>', $this_line);
    }else{
    $descriptif_array[]=$this_line;
    }
    @@ -134,9 +134,9 @@
    if($i==1) {
    echo "<h2>" . RESULT_SEARCH . "</h2><br />";
    }
    - $compat_search_text=getEregConditionCompatAccents($searchtext);
    + $compat_search_text=getPregConditionCompatAccents($searchtext);
    while ($prod = mysql_fetch_array($RESULT)) {
    - $nom = eregi_replace(getEregConditionCompatAccents($searchtext), '<b style="background-color:#FFFF00">' . "\\0" . '</b>', $prod['titre']);
    + $nom = preg_replace('/' . getPregConditionCompatAccents($searchtext) . '/i', '<b style="background-color:#FFFF00">' . "\\0" . '</b>', $prod['titre']);
    if(strlen($prod['chapo'])>40 || strlen($prod['texte'])<40){
    $lines=explode("\n",html_entity_decode($prod['chapo']));
    }else{
    @@ -150,7 +150,7 @@
    $descriptif_array=array();
    foreach($lines as $this_line){
    if(!empty($this_line) && strpos($this_line,'</a>')===false){
    - $descriptif_array[]= eregi_replace($compat_search_text, '<b style="background-color:#FFFF00">' . "\\0" . '</b>', $this_line);
    + $descriptif_array[]= preg_replace('/' . $compat_search_text . '/i', '<b style="background-color:#FFFF00">' . "\\0" . '</b>', $this_line);
    }else{
    $descriptif_array[]=$this_line;
    }
    @@ -264,12 +264,12 @@


    /**
    - * getEregConditionCompatAccents()
    + * getPregConditionCompatAccents()
    *
    * @param mixed $string
    * @return
    */
    -function getEregConditionCompatAccents($string)
    +function getPregConditionCompatAccents($string)
    {
    $string = convertAccents($string);
    return str_replace(array("a", "c", "e", "i", "o", "u", "n", "y", ".", "-", " ", "?"),
    Index: E:/sites/peel_premium/trunk/utilisateurs/enregistrement.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/utilisateurs/enregistrement.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/utilisateurs/enregistrement.php (revision 4190)
    @@ -126,7 +126,7 @@
    $mot_passe = md5($frm['mot_passe']);
    $newsletter = valide($frm['newsletter']);
    $commercial = valide($frm['commercial']);
    - $naissance = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$', '\\3-\\2-\\1', $frm['naissance']);
    + $naissance = preg_replace('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{2,4})$/', '$3-$2-$1', $frm['naissance']);

    $sql = "
    INSERT INTO peel_utilisateurs (
    Index: E:/sites/peel_premium/trunk/lib/fonctions/fonctions.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/lib/fonctions/fonctions.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/lib/fonctions/fonctions.php (revision 4190)
    @@ -541,10 +541,12 @@
    }

    // fonction de validation d'adresse mail trouvée sur http://www.phpinfo.net/?p=trucs&rub=astuces
    +// Edit : fonction prise de membre.php pour verifier l'adresse mail.
    function EmailOK($email)
    {
    - return(ereg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+' . '@' . '[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.' . '[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$',
    - $email));
    + //return(preg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+' . '@' . '[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.' . '[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$',
    + // $email));
    + return(preg_match('/^[[:alpha:]]{1}[[:alnum:]]*((\.|_|-)[[:alnum:]]+)*@[[:alpha:]]{1}[[:alnum:]]*((\.|-)[[:alnum:]]+)*(\.[[:alpha:]]{2,})/i', $email));
    }
    // création d'un mot de passe crypté
    function unique_id()
    @@ -1315,7 +1317,7 @@
    mt_srand ((double) microtime() * 1000000);
    while (strlen($pwd) < $chrs) {
    $chr = chr(mt_rand (0, 255));
    - if (eregi("^[a-hj-km-np-z2-9]$", $chr))
    + if (preg_match("/^[a-hj-km-np-z2-9]$/i", $chr))
    $pwd = $pwd . $chr;
    } ;
    return $pwd;
    Index: E:/sites/peel_premium/trunk/lib/class/multipage/multipage.class.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/lib/class/multipage/multipage.class.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/lib/class/multipage/multipage.class.php (revision 4190)
    @@ -102,16 +102,14 @@
    // --- R&eacute;cupère la partie du template à r&eacute;p&eacute;ter sans les d&eacute;limiteurs
    function GetLoop($str)
    {
    - $search = ereg("(<#LOOP>.*</#LOOP>)", $str, $result);
    + $search = preg_match("/<#LOOP>(.*)<\/#LOOP>/", $str, $result);
    $loop = $result[1];
    - $loop = str_replace('<#LOOP>' , '', $loop);
    - $loop = str_replace('</#LOOP>', '', $loop);
    return trim($loop);
    }
    // Remplace la partie Loop du template par $replace
    function ReplaceLoop($replace)
    {
    - $this->tpl_data = ereg_replace("(<#LOOP>.*</#LOOP>)", $replace, $this->tpl_data);
    + $this->tpl_data = preg_replace("/(<#LOOP>.*<\/#LOOP>)/", $replace, $this->tpl_data);
    }
    // --- Nombre de cellules qu'occupent les liens
    function ParseColspan()
    @@ -181,12 +179,12 @@
    if ($z == $this->PageEnCours) $page .= '<span class="numeropagerouge">' . $z . '</span>';
    else $page .= '<a href="' . $this->page_file . 'page=' . $z . '">' . $z . '</a>';

    - $liens .= ereg_replace("<#PAGE>", $page, $repeat);
    + $liens .= preg_replace("/<#PAGE>/", $page, $repeat);
    $page = '';
    }
    }
    // Si la requ&ecirc;te ne donne pas lieu à plusieurs liens
    - if (!$this->NbLiens) $liens .= ereg_replace("<#PAGE>", '<span class="numeropagegris">1</span>', $repeat);
    + if (!$this->NbLiens) $liens .= preg_replace("/<#PAGE>/", '<span class="numeropagegris">1</span>', $repeat);
    // On remplace la partie à r&eacute;peter dans le template
    $this->ReplaceLoop($liens);
    }
    @@ -210,15 +208,15 @@
    die();
    }

    - if (ereg("<#LOOP>" , $this->tpl_data)) $this->ParseLoop();
    - if (ereg("<#COLSPAN>" , $this->tpl_data)) $this->ParseColspan();
    - if (ereg("<#NBRECORD>" , $this->tpl_data)) $this->ParseNbRecord();
    - if (ereg("<#NEXT_PAGE>" , $this->tpl_data)) $this->ParseNextPage();
    - if (ereg("<#PREVIOUS_PAGE>" , $this->tpl_data)) $this->ParsePreviousPage();
    - if (ereg("<#FIRST_PAGE>" , $this->tpl_data)) $this->ParseFirstPage();
    - if (ereg("<#LAST_PAGE>" , $this->tpl_data)) $this->ParseLastPage();
    - if (ereg("<#CURRENT_PAGE>" , $this->tpl_data)) $this->ParseCurrentPage();
    - if (ereg("<#TOTAL_PAGE>" , $this->tpl_data)) $this->ParseTotalPage();
    + if (preg_match("/<#LOOP>/" , $this->tpl_data)) $this->ParseLoop();
    + if (preg_match("/<#COLSPAN>/" , $this->tpl_data)) $this->ParseColspan();
    + if (preg_match("/<#NBRECORD>/" , $this->tpl_data)) $this->ParseNbRecord();
    + if (preg_match("/<#NEXT_PAGE>/" , $this->tpl_data)) $this->ParseNextPage();
    + if (preg_match("/<#PREVIOUS_PAGE>/" , $this->tpl_data)) $this->ParsePreviousPage();
    + if (preg_match("/<#FIRST_PAGE>/" , $this->tpl_data)) $this->ParseFirstPage();
    + if (preg_match("/<#LAST_PAGE>/" , $this->tpl_data)) $this->ParseLastPage();
    + if (preg_macth("/<#CURRENT_PAGE>/" , $this->tpl_data)) $this->ParseCurrentPage();
    + if (preg_macth("/<#TOTAL_PAGE>/" , $this->tpl_data)) $this->ParseTotalPage();
    }
    // --- Affiche directement en sortie le contenu du template après traitement
    function pMultipage()
    Index: E:/sites/peel_premium/trunk/lib/class/pdf/makefont/makefont.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/lib/class/pdf/makefont/makefont.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/lib/class/pdf/makefont/makefont.php (revision 4190)
    @@ -173,7 +173,7 @@
    //StemV
    if(isset($fm['StdVW']))
    $stemv=$fm['StdVW'];
    - elseif(isset($fm['Weight']) and eregi('(bold|black)',$fm['Weight']))
    + elseif(isset($fm['Weight']) and preg_match('/(bold|black)/i',$fm['Weight']))
    $stemv=120;
    else
    $stemv=70;
    Index: E:/sites/peel_premium/trunk/rewrite.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/rewrite.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/rewrite.php (revision 4190)
    @@ -18,8 +18,8 @@
    $replac = "-AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn--------------------E--------";
    $mrpropre = (strtr($chaine, $tofind, $replac));
    $mrpropre = strtolower($mrpropre);
    - $mrpropre = ereg_replace("\"", "-", $mrpropre);
    - $mrpropre = ereg_replace("[-]{2,}", "-", $mrpropre);
    + $mrpropre = preg_replace('/\"/', "-", $mrpropre);
    + $mrpropre = preg_replace('/[-]{2,}/', "-", $mrpropre);
    return $mrpropre;
    }
    /*
    Index: E:/sites/peel_premium/trunk/modules/parrainage/inscription.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modules/parrainage/inscription.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/modules/parrainage/inscription.php (revision 4190)
    @@ -109,7 +109,7 @@
    $newsletter = valide($frm['newsletter']);
    $commercial = valide($frm['commercial']);
    $code_client = "CLT" . date("Y") . $frm['id_utilisateur'];
    - $naissance = ereg_replace('^([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})$', '\\3-\\2-\\1', $frm['naissance']);
    + $naissance = preg_replace('/^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{2,4})$/', '$3-$2-$1', $frm['naissance']);

    $sql = "
    UPDATE peel_utilisateurs SET
    Index: E:/sites/peel_premium/trunk/comparateur/mysql2comparateur.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/comparateur/mysql2comparateur.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/comparateur/mysql2comparateur.php (revision 4190)
    @@ -486,10 +486,10 @@

    Function TrimExt($Src)
    {
    - $Src = ereg_replace("(\r\n){0,15}$", "", $Src);
    - $Src = ereg_replace("^(\r\n){0,15}", "", $Src);
    - $Src = ereg_replace("(\n){0,15}$", "", $Src);
    - $Src = ereg_replace("^(\n){0,15}", "", $Src);
    + $Src = preg_replace("/(\r\n){0,15}$/", "", $Src);
    + $Src = preg_replace("/^(\r\n){0,15}/", "", $Src);
    + $Src = preg_replace("/(\n){0,15}$/", "", $Src);
    + $Src = preg_replace("/^(\n){0,15}/", "", $Src);
    $Src = trim($Src);
    return $Src;
    }
    Index: E:/sites/peel_premium/trunk/membre.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/membre.php (revision 4189)
    +++ E:/sites/peel_premium/trunk/membre.php (revision 4190)
    @@ -20,7 +20,7 @@
    $message_erreur = "";
    if (empty($_POST['email'])) {
    $message_erreur .= stripslashes(ERR_EMAIL_VIDE);
    - } elseif (!eregi("^[[:alpha:]]{1}[[:alnum:]]*((\.|_|-)[[:alnum:]]+)*@" . "[[:alpha:]]{1}[[:alnum:]]*((\.|-)[[:alnum:]]+)*" . "(\.[[:alpha:]]{2,})$", $_POST['email'])) { // si y'a un email on teste l'email
    + } elseif (!preg_match('/^[[:alpha:]]{1}[[:alnum:]]*((\.|_|-)[[:alnum:]]+)*@[[:alpha:]]{1}[[:alnum:]]*((\.|-)[[:alnum:]]+)*(\.[[:alpha:]]{2,})/i', $_POST['email'])) { // si y'a un email on teste l'email
    $message_erreur .= stripslashes(ERR_EMAIL_BAD);
    }
    • 0
  6. Gilles Boussin a ajouté un message dans un sujet  Corrections des bugs - sujet général -   

    Bonjour,

    Si vous voulez que nous gardions votre boutique à jour à chaque nouvelle version, ou que nous vous donnions le code de chaque nouvelle version, il faut nous contacter pour avoir un contrat de maintenance, que vous pourrez définir avec notre service commercial en fonction de vos besoins au 01 75 43 67 97.

    Le forum sert à répondre aux diverses questions de la communauté, mais n'a pas pour vocation à servir de repository complet de code.

    Cordialement,

    Gilles
    • 0
  7. Gilles Boussin a ajouté un message dans un sujet  Problème installation sur IIS   

    Bonjour FlorianPSM,

    A l'installation, c'est le script du répertoire /installation/ qui aurait dû se lancer.
    Il s'agit peut-être 'une spécificité d'IIS, la quasi-totalité des personnes travaillant sous APACHE.

    Quoiqu'il en soit, si le script d'install ne se lance pas autmatiquement, vous pouvez lz forcer en saisissant http:://www.votresite.tld/installation/index.php.

    Le script va installer la base de données, vérifier les droits sur vos dossiers / fichiers et écrire les accès BDD sur le fichier /lib/setup/info.inc.php

    Cordialement,
    • 0
  8. Gilles Boussin a ajouté un message dans un sujet  erreur édition PDF   

    Pour palier ce problème :
    recherchez l'expression "magic_quotes" partout dans le fichier lib/class/pdf/fpdf.php et rajoutez @ en début de commande.

    Par exemple :
    $mqr=get_magic_quotes_runtime();
    devient
    $mqr=@get_magic_quotes_runtime();

    Ca évitera les messages d'erreur, et en cas de non activation de cette fonction il n'y aura pas de conséquence négative.

    Cette correction sera intégrée dans la prochaine version de PEEL.
    • 0
  9. Gilles Boussin a ajouté un message dans un sujet  compteur commande   

    Bonjour,

    Vous pouvez exécuter dans phpmyadmin :
    ALTER TABLE `peel_commandes` AUTO_INCREMENT =1
    • 0
  10. Gilles Boussin a ajouté un message dans un sujet  [Tutorial] Installation De Peel Shopping 7.2   

    J'ai mis à jour ce tutorial pour indiquer 5.6 au lieu de 5.0. Concrètement c'est la même chose pour la 5.6 ou la 5.0.
    • 0
  11. Gilles Boussin a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne   

    Nouvelle version PEEL SHOPPING 5.6
    Bonjour à tous,

    Nous sommes heureux de vous informer de la sortie de la version 5.6 de PEEL SHOPPING qui est disponible dès maintenant.
    http://www.peel.fr/lire/peel-shopping-8.html

    Les améliorations essentielles concernent des corrections diverses, la réorganisation de la librairie de fonctions pour plus de facilité dans la programmation, et la mise en place de nouvelles fonctions de connexion à la base de données afin de simplifier le code. Par ailleurs la commande des produits virtuels sans frais de port est facilitée.

    Le code est dorénavant mieux documenté, et est plus facile à modifier.
    L'ensemble est aussi plus rapide car une correction a été faite sur la mise en cache des images.

    Voici les RELEASE NOTES comparatives PEEL SHOPPING 5.6 / PEEL SHOPPING 5.0 en date du 18/02/2010

    Fonctionnalités :
    - Ajout de la possibilité d'associer des PDF à un produit en plus d'images.
    - Ajout de la possibilité de vendre des produits sans que l'utilisateur final n'ait à donner des informations relatives au transport (utile pour les produits électroniques).
    - Ajout de certains attributs alt dans les balises de lien pour un meilleur référencement.
    - Ajout d'un paramétrage pour les rubriques de contenu afin d'afficher ou non les articles qui dépendent d'une rubrique sur la page d'accueil de cette rubrique.

    Ergonomie :
    - On permet à présent à un utilisateur de passer une commande dont le montant est inférieur au montant de son avoir. On décrémente donc ensuite l'avoir du client qui est mis à jour en base de données (et non plus remis à 0 systématiquement).
    - Amélioration de la cohérence de l'affichage des montants HT/TTC dans l'encart en bas à droite des factures PDF.
    - Amélioration de la cohérence lorsqu'on arrive au paiement : ne pas déconnecter le client, garder le panier si paiement a échoué.
    - Ajout de la possibilité de positionner les articles dans la page rubrique.
    - Ajout d'une redirection sur la page membre.php vers la page compte.php lorsque que l'utilisateur est de loggé + Changement de l'intitulé de la page.
    - Sélection du pays automatique dans le panier en fonction du pays de l'utilisateur.
    - Nommage de la section "Guides Pratiques" en "Informations".

    Correction de bugs :
    - Correction d'un Undefined index sur "zones" dans administrer/pays.php
    - Correction de bug de pagination dans la page produits de l'administration.
    - Correction de la gestion des métas suite à erreur de conception.
    - Correction de valeurs hidden pour éviter d'effacer par erreur dans la BDD si configuration pas bonne.
    - Correction du numéro des factures lorsqu'on ne saisit pas de format précis dans peel_sites.
    - Correction d'un bug lors du traitement de formulaire de recherche quand il était vide
    - Correction de l'affichage des prix dans produit à la une.
    - Correction de l'affichage des simple quotes dans les facture pdf.
    - Correction du numéro de facture automatique.
    - Correction des "" encadrant iso-8859-1 dans les entêtes d'emails : ça créait des soucis d'affichage sur certains logiciels de messagerie.
    - Correction de bug à l'initialisation du caddie.
    - Correction d'un bug dans le formulaire de gestion des stocks par produits.
    - Correction d'un lien contenant 'administrer' en dur à la place de $GLOBALS['administrer_url'].
    - Correction de l'affichage de la date paiement sur les factures PDF.
    - Correction de l'internationalisation de la BDD dans le back-office.
    - Correction en-tête du fichier + retrait mentions en bas de fichier.
    - Corrections du XHTML suite à nouvelle étude au validateur du code généré.
    - Correction d'un bug lors de la consultation d'une facture alors que le client associé à la facture n'existe plus dans la base peel_utilisateurs.
    - Corrections de plusieurs bug concernant la gestion des prix par lots
    - Correction de fautes d'orthographes.
    - Correction affichage HT/TTC lors de la création d'un bon de commande.
    - Correction d'un bug pendant le passage d'une commande, lorsque l'utilisateur revenait en arrière dans son historique lors du processus de commande
    - Correction de l'edition du nom d'un attribut.
    - Correction de la fonction affiche_contenu_html(). Ajout du deuxième paramètre ENT_QUOTES pour la fonction htmlspecialchars_decode_compat_php4

    Optimisation du code (rapidité, compatibilité, sécurité, homogénéité ... ) :
    - Simplification du traitement des informations relative à la zone de livraison et au type de transport
    - Ajout d'un paramètre à certaines fonction affiche_XXX pour avoir un return au lieu d'un echo
    - Ajout de intval pour protéger du SQL
    - Optimisation du module thumbs.
    - Amélioration de la cohérence dans l'appel des méthodes de la classe caddie.
    - Uniformisation des 'lang' dans la base SQL.
    - Lors de la création de proforma, mise de statut_paiement à 1 par défaut, car pas d'entrée pour statut_paiement à 0 dans peel_statut_paiement.
    - Modification des mysql_fetch_array par des mysql_fetch_assoc pour un plus faible usage de la mémoire et plus de rapidité.
    - Ajout de la structure de documentation
    - Changement de $out en $output toujours par cohérence du code
    - Correction de la fonction nl2br() : on ne l'applique que si le texte n'est pas en HTML
    - Indentations mineures du code
    - Création d'une petite fonction dans modules/category_promotion/fonctions.php pour plus de cohérence
    - Création de get_country_select_options et remplacement partout dans le code des générations de listes de pays par des appels à cette fonctions
    - Création de get_payment_select_options dans fonctions/display.php
    - Création de la page order.php. Cette nouvelle librairie de fonctions contient les fonctions relatives au processus de commande.
    - Création d'un fichier de fonctions sur les stocks à partir d'un morceau de lib/fonctions/fonctions.php
    - Création d'un nouveau fichier de fonctions : fonctions/user.php
    - Création d'une librairie de fonctions fonctions/display.php à partir de fonctions/fonctions.php
    - Sécurisation de SQL et simplifications mineures
    - Suppression des fichiers historique_commande_details.php qui ne sont appelés nulle part
    - Suppression de '$method =' dans des arguments lors de l'appel à une fonctions
    - Suppression de lib/class/mail.php car script non utilisé
    - Suppression de divers "global $variable" qui ne servaient à rien
    - Suppression de fonctions spécifique pour l'accueil : ajout d'un paramètre pour gérer des différences de rendu si on en veut
    - Suppression de la fonction creation_numero_facture qui ne sert nulle part et n'est pas fonctionnelle
    - Suppression de la fonction server_info et remplacement par $_SERVER[] qui est utilisé à plein d'endroits par ailleurs
    - Suppression de sendfacturepdf() et remplacement par une extension de l'usage de sendclient() à laquelle on rajoute un second argument.
    - Amélioration de la cohérence de la gestion du recalcul du caddie après changement de zone géographique ou de type de port
    - Ajout de l'appel de fonctions_admin dans tous les fichiers d'administration
    - Amélioration de la fonction thumbs.
    - Création d'une librairie de fonctions de manipulation de la BDD pour pourvoir rendre compatible avec autre serveur que MySQL, et possibilité simple de faire ou non un die() en cas d'erreur de requête SQL
    - Passage de recupere_couleur et recupere_taille du fichier de la classe caddie vers le fichier de fonctions, pour avoir fichier de classe caddie bien propre
    - Fusion des sql_set pour INSERT et UPDATE des commandes, pour simplifier et éviter erreur à l'avenir si modification d'une partie et pas de l'autre
    - Passage de couleurs CSS de 3 à 6 chiffres pour plus d'homogénéité et de compatibilité
    - Protection sur la taille du code de la langue
    - Retrait des fonctions inutiles : cree_devis et creation_bl_pdf
    • 0 réponse
    • 2 876 vues
  12. Gilles Boussin a ajouté un message dans un sujet  Reinitialiser le compteur de l'id des produits   

    Bonjour,

    Attention au DELETE : ça supprime la table, donc avant l'INSERT ça la recrée.
    Alors qu'avec le TRUNCATE, ça vide la table, et ça ne la recrée donc pas => avec le TRUNCATE, ça garde donc les modifications éventuellement faites sur la structure de données entre temps (ajout d'index, de colonne, modification de format, etc.)

    => si vous faites un DELETE, copiez votre table juste avant au cas où...
    • 0
  13. Gilles Boussin a ajouté un message dans un sujet  Editeur Wisiwig - des espaces entre chaque ligne   

    Bonjour,

    Il s'agit d'un bug corrigé dans la 5.6.
    Comme les corrections ne sont pas très longues à effectuer sur les précédents versions récentes, voici un DIFF entre la 5.5 et la 5.6 sur ce sujet :
    (les lignes commençant par - sont supprimées, celles avec + sont ajoutées)

    NB : CONCENTREZ-VOUS SUR LES MORCEAUX AVEC nl2br qui sont les lignes importantes à modifier


    Index: E:/sites/peel_premium/trunk/modeles/standard/produit_details.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/standard/produit_details.php (revision 6536)
    +++ E:/sites/peel_premium/trunk/modeles/standard/produit_details.php (revision 6537)
    @@ -120,9 +120,9 @@
    <tr>
    <td class="fp_descriptif">
    <!-- descriptif, description -->
    - ' . nl2br(html_entity_decode($prod['descriptif_' . $_SESSION['langue'] . ''])) . '
    + ' . (strip_tags(html_entity_decode($prod['descriptif_' . $_SESSION['langue'] . '']))!=html_entity_decode($prod['descriptif_' . $_SESSION['langue'] . ''])?html_entity_decode($prod['descriptif_' . $_SESSION['langue'] . '']):nl2br(html_entity_decode($prod['descriptif_' . $_SESSION['langue'] . '']))) . '
    <p></p>
    - ' . nl2br(html_entity_decode($prod['description_' . $_SESSION['langue'] . ''])) . '
    + ' . (strip_tags(html_entity_decode($prod['description_' . $_SESSION['langue'] . '']))!=html_entity_decode($prod['description_' . $_SESSION['langue'] . ''])?html_entity_decode($prod['description_' . $_SESSION['langue'] . '']):nl2br(html_entity_decode($prod['description_' . $_SESSION['langue'] . '']))) . '
    </td>
    </tr>
    </table>
    Index: E:/sites/peel_premium/trunk/modeles/standard/template.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/standard/template.php (revision 6536)
    +++ E:/sites/peel_premium/trunk/modeles/standard/template.php (revision 6537)
    @@ -247,7 +247,7 @@
    if (!empty($art['image1'])) {
    echo "<img src=\"$repertoire_upload/" . $art['image1'] . "\" align=\"left\" />";
    }
    - echo nl2br(html_entity_decode($art['chapo_' . $_SESSION['langue'] . ''])) . "
    + echo (strip_tags(html_entity_decode($art['chapo_' . $_SESSION['langue'] . '']))!=html_entity_decode($art['chapo_' . $_SESSION['langue'] . ''])?html_entity_decode($art['chapo_' . $_SESSION['langue'] . '']):nl2br(html_entity_decode($art['chapo_' . $_SESSION['langue'] . '']))) . "
    </td>
    </tr>";
    }
    @@ -830,7 +830,7 @@
    echo "
    <form method=\"post\" action=\"$wwwroot/achat/caddie_ajout.php\" id=\"" . $form . "ajout" . $prodId . "\">";
    $hidden_input = '<input type="hidden" value="' . $prodId . '" name="id" />';
    -
    +
    if (is_advanced_stock_module_active()) {
    $sqlStock = "SELECT stock, couleur_id, taille_id
    FROM peel_stocks_temp
    @@ -858,7 +858,7 @@
    $stock_remain = 0; #- Initialisation de la variable Stock restant
    $sPrix = 0; # Indique qu'il n'existe pas de prix / taille pour ce produit.

    -
    +
    /**
    */
    /* 1er cas : produit avec stock sans critère */
    @@ -1021,12 +1021,12 @@
    $sqlstock = "SELECT * FROM peel_produits WHERE id = '$prodId'";
    $query = mysql_query($sqlstock);
    $p = mysql_fetch_object($query);
    -
    - $sqlcriteres = "SELECT c.id as cid, c.nom_" . $_SESSION['langue']. " as cname, t.id as tid, t.nom_" . $_SESSION['langue']. " as tname, t.prix
    - FROM peel_couleurs c
    +
    + $sqlcriteres = "SELECT c.id as cid, c.nom_" . $_SESSION['langue']. " as cname, t.id as tid, t.nom_" . $_SESSION['langue']. " as tname, t.prix
    + FROM peel_couleurs c
    JOIN peel_produits_couleurs pc ON c.id = pc.couleur_id
    NATURAL JOIN peel_produits_tailles pt
    - JOIN peel_tailles t ON t.id = pt.taille_id
    + JOIN peel_tailles t ON t.id = pt.taille_id
    WHERE pc.produit_id = '" . $prodId . "'";
    $query = mysql_query($sqlcriteres);
    if ($query && mysql_num_rows($query) > 0) {
    @@ -1034,7 +1034,7 @@
    $selected = 1;
    while ($type = mysql_fetch_object($query)) {
    echo '<option value="' . $type->cid . '|' . $type->tid . '|"' . ($selected == 1 ? ' selected="selected"' : '') . '>'
    - . (!empty($type->cname) ? COLOR . ' : ' . $type->cname . ' - ' : '')
    + . (!empty($type->cname) ? COLOR . ' : ' . $type->cname . ' - ' : '')
    . (!empty($type->tname) ? SIZE . ' : ' . $type->tname : '')
    . '</option>';
    $selected++;
    @@ -1043,14 +1043,14 @@
    } else {
    $hidden_input .= '<input type="hidden" name="critere" value="||" />';
    }
    -
    +
    if ($p->on_rupture == 1 || $p->stock == 0) {
    echo '
    <p style="color:#990000;font-style:italic">
    Ce produit est actuellement en rupture de stock. Vous ne pouvez pas le commander.
    </p>';
    } else {
    - echo '<p class="retour">' . QUANTITY . ' : <input type="text" size="3" name="qte" value="1" />'
    + echo '<p class="retour">' . QUANTITY . ' : <input type="text" size="3" name="qte" value="1" />'
    . $hidden_input . '
    <input type="hidden" name="option" value="0" />
    </p>
    @@ -1104,7 +1104,8 @@
    if (mysql_num_rows($res) > 0) {
    $cgv = mysql_fetch_object($res);
    echo '<h2>' . html_entity_decode($cgv->titre) . '</h2>
    -<p>' . nl2br(html_entity_decode($cgv->texte)) . '</p>';
    +<p>' . (strip_tags(html_entity_decode($cgv->texte))!=html_entity_decode($cgv->texte)?html_entity_decode($cgv->texte):nl2br(html_entity_decode($cgv->texte))) . '</p>
    +';
    } else {
    echo EMPTY_TEXT_CGV;
    }
    @@ -1223,11 +1224,11 @@
    case html_entity_decode(CHECK) :
    // On met à jour l'avoir de la session client
    $_SESSION['utilisateur']['avoir'] -= $_SESSION['caddie']->avoir;
    -
    +
    /* Le caddie est réinitialisé pour ne pas laisser le client passer une deuxième commande en soumettant une deuxième fois le formulaire */
    $_SESSION['caddie']->init();
    vide_commandeinfo();
    -
    +
    echo '
    </p>
    <p>- ' . PRINT_PROFORMA . ' : <a href="' . $wwwroot . '/factures/commande_pdf.php?code_facture=' . $com->code_facture . '&amp;mode=bdc">' . CLICK_HERE . '</a></p>
    @@ -1240,11 +1241,11 @@
    case html_entity_decode(TRANSFER) :
    // On met à jour l'avoir de la session client
    $_SESSION['utilisateur']['avoir'] -= $_SESSION['caddie']->avoir;
    -
    +
    /* Le caddie est réinitialisé pour ne pas laisser le client passer une deuxième commande en soumettant une deuxième fois le formulaire */
    $_SESSION['caddie']->init();
    vide_commandeinfo();
    -
    +
    echo nl2br(SEND_TRANSFER);
    print_rib();
    break;
    @@ -1300,11 +1301,11 @@
    </div>
    ';
    break;
    -
    +
    default :
    // On met à jour l'avoir de la session client
    $_SESSION['utilisateur']['avoir'] -= $_SESSION['caddie']->avoir;
    -
    +
    /* Le caddie est réinitialisé pour ne pas laisser le client passer une deuxième commande en soumettant une deuxième fois le formulaire */
    $_SESSION['caddie']->init();
    vide_commandeinfo();
    @@ -1666,16 +1667,16 @@
    function affiche_filtre($id)
    {
    global $module_filtre;
    -
    +
    global $wwwroot;

    if ($module_filtre == 1) {
    $qid = mysql_query("SELECT id, c.nom_" . $_SESSION['langue'] . " as categorie, c.image
    FROM peel_categories c
    WHERE c.nom_" . $_SESSION['langue'] . " != '' AND c.etat = '1' AND id = '".$id."'
    - ORDER BY c.position") or DIE(SQL_CONNECTION_ERROR . __LINE__ . '.<p>' . MYSQL_ERROR());
    + ORDER BY c.position") or DIE(SQL_CONNECTION_ERROR . __LINE__ . '.<p>' . MYSQL_ERROR());
    $cat = mysql_fetch_assoc($qid);
    -
    +
    if (is_module_url_rewriting_active()) {
    $urlcat = "$wwwroot/achat/cat-" . mrpropre($cat['categorie']) . "-" . $id. ".html?";
    } else {
    @@ -1688,7 +1689,7 @@
    <option value="'.$urlcat.'tri=nom_' . $_SESSION['langue'] . '">' . ITEM . '</option>
    <option value="'.$urlcat.'tri=prix">' . PRICE . '</option>
    </select>
    -';
    +';
    }
    }

    Index: E:/sites/peel_premium/trunk/modeles/standard/article_details.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/standard/article_details.php (revision 6536)
    +++ E:/sites/peel_premium/trunk/modeles/standard/article_details.php (revision 6537)
    @@ -30,8 +30,8 @@
    }

    echo "</p>
    - <p class=\"normal\" style=\"text-align:justify;\">" . nl2br(html_entity_decode($prod['chapo_' . $_SESSION['langue'] . ''])) . "</p>
    - <p class=\"normal\" style=\"text-align:justify;\">" . nl2br(html_entity_decode($prod['texte_' . $_SESSION['langue'] . ''])) . "</p>";
    + <p class=\"normal\" style=\"text-align:justify;\">" . (strip_tags(html_entity_decode($prod['chapo_' . $_SESSION['langue'] . '']))!=html_entity_decode($prod['chapo_' . $_SESSION['langue'] . ''])?html_entity_decode($prod['chapo_' . $_SESSION['langue'] . '']):nl2br(html_entity_decode($prod['chapo_' . $_SESSION['langue'] . '']))) . "</p>
    + <p class=\"normal\" style=\"text-align:justify;\">" . (strip_tags(html_entity_decode($prod['texte_' . $_SESSION['langue'] . '']))!=html_entity_decode($prod['texte_' . $_SESSION['langue'] . ''])?html_entity_decode($prod['texte_' . $_SESSION['langue'] . '']):nl2br(html_entity_decode($prod['texte_' . $_SESSION['langue'] . '']))) . "</p>";

    if(is_module_direaunami_active()){
    echo
    Index: E:/sites/peel_premium/trunk/modeles/blog/produit_details.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/blog/produit_details.php (revision 6536)
    +++ E:/sites/peel_premium/trunk/modeles/blog/produit_details.php (revision 6537)
    @@ -118,9 +118,9 @@
    <tr>
    <td class="fp_descriptif">
    <!-- descriptif, description -->
    - ' . nl2br(html_entity_decode($prod['descriptif_' . $_SESSION['langue'] . ''])) . '
    + ' . (strip_tags(html_entity_decode($prod['descriptif_' . $_SESSION['langue'] . '']))!=html_entity_decode($prod['descriptif_' . $_SESSION['langue'] . ''])?html_entity_decode($prod['descriptif_' . $_SESSION['langue'] . '']):nl2br(html_entity_decode($prod['descriptif_' . $_SESSION['langue'] . '']))) . '
    <p></p>
    - ' . nl2br(html_entity_decode($prod['description_' . $_SESSION['langue'] . ''])) . '
    + ' . (strip_tags(html_entity_decode($prod['description_' . $_SESSION['langue'] . '']))!=html_entity_decode($prod['description_' . $_SESSION['langue'] . ''])?html_entity_decode($prod['description_' . $_SESSION['langue'] . '']):nl2br(html_entity_decode($prod['description_' . $_SESSION['langue'] . '']))) . '
    </td>
    </tr>
    </table>
    @@ -168,7 +168,7 @@
    if (is_module_avis_active()) {
    echo "<p><img src=\"$wwwroot/images/mail.gif\" style=\"vertical-align:middle;border:0;\" alt=\"mail\" />&nbsp;<a href=\"modules/avis/liste_avis.php?prodid=" . $prod['id'] . "\" class=\"label\">" . TOUS_LES_AVIS . '</a></p>';
    }
    -echo '
    +echo '
    </td>
    </tr>
    </table>
    Index: E:/sites/peel_premium/trunk/modeles/blog/template.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/blog/template.php (revision 6536)
    +++ E:/sites/peel_premium/trunk/modeles/blog/template.php (revision 6537)
    @@ -226,15 +226,17 @@
    echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"100%\">";

    while ($art = mysql_fetch_assoc($query_ACTU)) {
    - echo "<tr>";
    - echo "<td>";
    - echo "<h2>" . html_entity_decode($art['titre_' . $_SESSION['langue'] . '']) . "</h2>";
    - echo "<p>" . date($GLOBALS['date_basic_format_short']) . "</p>";
    + echo "
    + <tr>
    + <td>
    + <h2>" . html_entity_decode($art['titre_' . $_SESSION['langue'] . '']) . "</h2>
    + <p>" . date($GLOBALS['date_basic_format_short']) . "</p>";
    if (!empty($art['image1'])) {
    echo "<img src=\"$repertoire_upload/" . $art['image1'] . "\" align=\"left\">";
    }
    - echo nl2br(html_entity_decode($art['chapo_' . $_SESSION['langue'] . '']));
    - echo "</td></tr>";
    + echo (strip_tags(html_entity_decode($art['chapo_' . $_SESSION['langue'] . '']))!=html_entity_decode($art['chapo_' . $_SESSION['langue'] . ''])?html_entity_decode($art['chapo_' . $_SESSION['langue'] . '']):nl2br(html_entity_decode($art['chapo_' . $_SESSION['langue'] . '']))) . "
    + </td>
    + </tr>";
    }
    echo "</table>";
    }
    @@ -869,7 +871,7 @@
    echo "
    <form method=\"post\" action=\"$wwwroot/achat/caddie_ajout.php\" id=\"" . $form . "ajout" . $prodId . "\">";
    $hidden_input = "<input type=\"hidden\" name=\"id\" value=\"" . $prodId . "\" />";
    -
    +
    if (is_advanced_stock_module_active()) {
    $sqlStock = "SELECT stock, couleur_id, taille_id FROM peel_stocks_temp WHERE produit_id = '" . $prodId . "'";
    /* Ici on ne recherche que les produits dont le stock est > 0 */
    @@ -1082,12 +1084,12 @@
    $sqlstock = "SELECT * FROM peel_produits WHERE id = '$prodId'";
    $query = mysql_query($sqlstock);
    $p = mysql_fetch_object($query);
    -
    - $sqlcriteres = "SELECT c.id as cid, c.nom_" . $_SESSION['langue']. " as cname, t.id as tid, t.nom_" . $_SESSION['langue']. " as tname, t.prix
    - FROM peel_couleurs c
    +
    + $sqlcriteres = "SELECT c.id as cid, c.nom_" . $_SESSION['langue']. " as cname, t.id as tid, t.nom_" . $_SESSION['langue']. " as tname, t.prix
    + FROM peel_couleurs c
    JOIN peel_produits_couleurs pc ON c.id = pc.couleur_id
    NATURAL JOIN peel_produits_tailles pt
    - JOIN peel_tailles t ON t.id = pt.taille_id
    + JOIN peel_tailles t ON t.id = pt.taille_id
    WHERE pc.produit_id = '" . $prodId . "'";
    $query = mysql_query($sqlcriteres);
    if ($query && mysql_num_rows($query) > 0) {
    @@ -1095,7 +1097,7 @@
    $selected = 1;
    while ($type = mysql_fetch_object($query)) {
    echo '<option value="' . $type->cid . '|' . $type->tid . '|"' . ($selected == 1 ? ' selected="selected"' : '') . '>'
    - . (!empty($type->cname) ? COLOR . ' : ' . $type->cname . ' - ' : '')
    + . (!empty($type->cname) ? COLOR . ' : ' . $type->cname . ' - ' : '')
    . (!empty($type->tname) ? SIZE . ' : ' . $type->tname : '')
    . '</option>';
    $selected++;
    @@ -1104,14 +1106,14 @@
    } else {
    $hidden_input .= '<input type="hidden" name="critere" value="||" />';
    }
    -
    +
    if ($p->on_rupture == 1 || $p->stock == 0) {
    echo '
    <p style="color:#990000;font-style:italic">
    Ce produit est actuellement en rupture de stock. Vous ne pouvez pas le commander.
    </p>';
    } else {
    - echo '<p class="retour">' . QUANTITY . ' : <input type="text" size="3" name="qte" value="1" />'
    + echo '<p class="retour">' . QUANTITY . ' : <input type="text" size="3" name="qte" value="1" />'
    . $hidden_input . '
    <input type="hidden" name="option" value="0" />
    </p>
    @@ -1171,10 +1173,10 @@
    $cgv = mysql_fetch_object($res);
    echo '
    <h2>' . html_entity_decode($cgv->titre) . '</h2>
    -<p>' . nl2br(html_entity_decode($cgv->texte)) . '</p>
    +<p>' . (strip_tags(html_entity_decode($cgv->texte))!=html_entity_decode($cgv->texte)?html_entity_decode($cgv->texte):nl2br(html_entity_decode($cgv->texte))) . '</p>
    ';
    } else {
    - echo "Les conditions de vente du site $wwwroot ne sont pas encore définies";
    + echo EMPTY_TEXT_CGV;
    }
    }

    @@ -1292,11 +1294,11 @@
    case html_entity_decode(CHECK) :
    // On met à jour l'avoir de la session client
    $_SESSION['utilisateur']['avoir'] -= $_SESSION['caddie']->avoir;
    -
    +
    /* Le caddie est réinitialisé pour ne pas laisser le client passer une deuxième commande en soumettant une deuxième fois le formulaire */
    $_SESSION['caddie']->init();
    vide_commandeinfo();
    -
    +
    echo '
    </p>
    <p>- ' . PRINT_PROFORMA . ' : <a href="' . $wwwroot . '/factures/commande_pdf.php?code_facture=' . $com->code_facture . '&amp;mode=bdc">' . CLICK_HERE . '</a></p>
    @@ -1309,11 +1311,11 @@
    case html_entity_decode(TRANSFER) :
    // On met à jour l'avoir de la session client
    $_SESSION['utilisateur']['avoir'] -= $_SESSION['caddie']->avoir;
    -
    +
    /* Le caddie est réinitialisé pour ne pas laisser le client passer une deuxième commande en soumettant une deuxième fois le formulaire */
    $_SESSION['caddie']->init();
    vide_commandeinfo();
    -
    +
    echo nl2br(SEND_TRANSFER);
    print_rib();
    break;
    @@ -1369,11 +1371,11 @@
    </div>
    ';
    break;
    -
    +
    default :
    // On met à jour l'avoir de la session client
    $_SESSION['utilisateur']['avoir'] -= $_SESSION['caddie']->avoir;
    -
    +
    /* Le caddie est réinitialisé pour ne pas laisser le client passer une deuxième commande en soumettant une deuxième fois le formulaire */
    $_SESSION['caddie']->init();
    vide_commandeinfo();
    @@ -1745,16 +1747,16 @@
    function affiche_filtre($id)
    {
    global $module_filtre;
    -
    +
    global $wwwroot;

    if ($module_filtre == 1) {
    $qid = mysql_query("SELECT id, c.nom_" . $_SESSION['langue'] . " as categorie, c.image
    FROM peel_categories c
    WHERE c.nom_" . $_SESSION['langue'] . " != '' AND c.etat = '1' AND id = '".$id."'
    - ORDER BY c.position") or DIE(SQL_CONNECTION_ERROR . __LINE__ . '.<p>' . MYSQL_ERROR());
    + ORDER BY c.position") or DIE(SQL_CONNECTION_ERROR . __LINE__ . '.<p>' . MYSQL_ERROR());
    $cat = mysql_fetch_assoc($qid);
    -
    +
    if (is_module_url_rewriting_active()) {
    $urlcat = "$wwwroot/achat/cat-" . mrpropre($cat['categorie']) . "-" . $id. ".html?";
    } else {
    @@ -1767,7 +1769,7 @@
    <option value="'.$urlcat.'tri=nom_' . $_SESSION['langue'] . '">' . ITEM . '</option>
    <option value="'.$urlcat.'tri=prix">' . PRICE . '</option>
    </select>
    -';
    +';
    }
    }

    Index: E:/sites/peel_premium/trunk/modeles/blog/article_details.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modeles/blog/article_details.php (revision 6536)
    +++ E:/sites/peel_premium/trunk/modeles/blog/article_details.php (revision 6537)
    @@ -32,8 +32,8 @@
    }

    echo "</p>
    - <p class=\"normal\" style=\"text-align:justify;\">" . nl2br(html_entity_decode($prod['chapo_' . $_SESSION['langue'] . ''])) . "</p>
    - <p class=\"normal\" style=\"text-align:justify;\">" . nl2br(html_entity_decode($prod['texte_' . $_SESSION['langue'] . ''])) . "</p>";
    + <p class=\"normal\" style=\"text-align:justify;\">" . (strip_tags(html_entity_decode($prod['chapo_' . $_SESSION['langue'] . '']))!=html_entity_decode($prod['chapo_' . $_SESSION['langue'] . ''])?html_entity_decode($prod['chapo_' . $_SESSION['langue'] . '']):nl2br(html_entity_decode($prod['chapo_' . $_SESSION['langue'] . '']))) . "</p>
    + <p class=\"normal\" style=\"text-align:justify;\">" . (strip_tags(html_entity_decode($prod['texte_' . $_SESSION['langue'] . '']))!=html_entity_decode($prod['texte_' . $_SESSION['langue'] . ''])?html_entity_decode($prod['texte_' . $_SESSION['langue'] . '']):nl2br(html_entity_decode($prod['texte_' . $_SESSION['langue'] . '']))) . "</p>";
    if (is_module_direaunami_active()){
    echo
    "<p class=\"right\"><img src=\"".$wwwroot."/images/mail.gif\" style=\"border:0;vertical-align:top\" alt=\"mail\" />&nbsp;<a class=\"normal\" href=\"" . $wwwroot . "/modules/direaunami/direaunami.php\">" . TELL_FRIEND . "</a></p>";
    Index: E:/sites/peel_premium/trunk/modules/attributs/administrer/fonctions.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modules/attributs/administrer/fonctions.php (revision 6536)
    +++ E:/sites/peel_premium/trunk/modules/attributs/administrer/fonctions.php (revision 6537)
    @@ -10,7 +10,7 @@
    // | Author: Advisto SAS, RCS 479 205 452, France, http://www.peel.fr/ |
    // +----------------------------------------------------------------------+
    // $Id$
    -//
    +//

    /* Fonctions de nom_attributs.php */

    @@ -204,7 +204,7 @@
    if (mysql_num_rows($qid) > 0) {
    $bd = mysql_fetch_assoc($qid);
    mysql_query("DELETE FROM peel_attributs WHERE id = $id");
    - $message = "<p class=\"normal\">La attribut <b>" . html_entity_decode($bd['descriptif']) . "</b> a &eacute;t&eacute; effac&eacute;e.";
    + $message = "<p class=\"normal\">L'attribut <b>" . html_entity_decode($bd['descriptif']) . "</b> a &eacute;t&eacute; effac&eacute;e.";
    echo nl2br(html_entity_decode($message));
    }
    }
    Index: E:/sites/peel_premium/trunk/modules/affiliation/conditions.php
    ===================================================================
    --- E:/sites/peel_premium/trunk/modules/affiliation/conditions.php (revision 6536)
    +++ E:/sites/peel_premium/trunk/modules/affiliation/conditions.php (revision 6537)
    @@ -10,7 +10,7 @@
    // | Author: Advisto SAS, RCS 479 205 452, France, http://www.peel.fr/ |
    // +----------------------------------------------------------------------+
    // $Id$
    -//
    +//

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

    @@ -28,7 +28,8 @@
    if ($res && mysql_num_rows($res) > 0) {
    $cgv = mysql_fetch_object($res);
    echo '<h2>'. html_entity_decode($cgv->titre).'</h2>
    -<p>'.nl2br(html_entity_decode($cgv->texte)).'</p>';
    +<p>' . (strip_tags(html_entity_decode($cgv->texte))!=html_entity_decode($cgv->texte)?html_entity_decode($cgv->texte):nl2br(html_entity_decode($cgv->texte))) . '</p>
    +';
    } else {
    echo EMPTY_TEXT_AFFILI;
    }
    • 0
  14. Gilles Boussin a ajouté un message dans un sujet  Tutorial : Comment migrer de PEEL 5.3, 5.4, 5.41, 5.5, 5.6 ou 5.7 vers 5.71   

    Le tutorial a été mis à jour suite à la version 5.6.
    • 0
  15. Gilles Boussin a ajouté un message dans un sujet  Remplacer les ereg par des preg_match   

    Bonjour Shogun,

    Nous avons dans une partie du code de la 5.6 qui est sortie aujourd'hui :

    $search = preg_match("/<#LOOP>(.*)<\/#LOOP>/", $str, $result);
    $loop = $result[1];

    ce qui devrait effectivement faire l'affaire.

    Gilles
    • 0
  16. Gilles Boussin a ajouté un sujet dans Module PEEL Premium pour PEEL SHOPPING   

    Nouvelle version PEEL PREMIUM 5.6
    Bonjour à toutes et à tous,

    Nous sommes heureux de vous informer de la sortie de la version 5.6 de PEEL PREMIUM.

    Les améliorations essentielles concernent notamment l'ajout d'un module microentreprise et l'optimisation des commandes des produits virtuels sans frais de port, ainsi techniquement la réorganisation de la librairie de fonctions pour plus de facilité dans la programmation, et la mise en place de nouvelles fonctions de connexion à la base de données afin de simplifier le code. Le code est dorénavant mieux documenté, et est plus facile à modifier.

    Voici les RELEASE NOTES comparatives PEEL 5.6 / PEEL 5.5 en date du 17/02/2010 :

    Fonctionnalités :
    - Ajout de la possibilité de vendre des produits sans que l'utilisateur final n'ait à donner des informations relatives au transport (utile pour les produits électroniques).
    - Ajout du module de duplication de produit.
    - Ajout du module de micro-entreprise.
    - Ajout d'un paramétrage pour les rubriques de contenu afin d'afficher ou non les articles qui dépendent d'une rubrique sur la page d'accueil de cette rubrique.
    - Ajout de la possibilité d'associer des PDF à un produit en plus d'images.
    - Ajout de certains attributs alt dans les balises de lien pour un meilleur référencement.

    Ergonomie :
    - Ajout de la possibilité de positionner les articles dans la page rubrique.
    - Affichage des attributs pour les produits nécessitant un réassort.
    - Ajout d'une redirection sur la page membre.php vers la page compte.php lorsque que l'utilisateur est de loggé + Changement de l'intitulé de la page.
    - Amélioration de la cohérence de l'affichage des montants HT/TTC dans l'encart en bas à droite des factures PDF.
    - Amélioration de la cohérence lorsqu'on arrive au paiement : ne pas déconnecter le client, garder le panier si paiement a échoué.
    - Sélection du pays automatique dans le panier en fonction du pays de l'utilisateur.
    - Nommage de la section "Guides Pratiques" en "Informations".
    - On permet à présent à un utilisateur de passer une commande dont le montant est inférieur au montant de son avoir. On décrémente donc ensuite l'avoir du client qui est mis à jour en base de données (et non plus remis à 0 systématiquement).

    Correction de bugs :
    - Correction d'un bug pendant le passage d'une commande, lorsque l'utilisateur revenait en arrière dans son historique lors du processus de commande
    - Corrections de plusieurs bug concernant la gestion des prix par lots
    - Correction d'un problème de modification du nom des attributs.
    - Correction de l'affichage du prix dans le module à la une en mode "fondu"
    - Ajout de la gestion de la langue dans le module de nuage de tags.
    - Correction d'un Undefined index sur "zones" dans administrer/pays.php
    - Correction d'un lien contenant 'administrer' en dur à la place de $GLOBALS['administrer_url'].
    - Correction de fautes d'orthographes.
    - Correction affichage HT/TTC lors de la création d'un bon de commande.
    - Correction de bug de pagination dans la page produits de l'administration.
    - Correction de bug dans le menu déroulant avec url_rewriting activé.
    - Correction de l'affichage de la date paiement sur les factures PDF.
    - Correction de l'internationalisation de la BDD dans le back-office.
    - Correction de la gestion des métas suite à erreur de conception.
    - Correction de valeurs hidden pour éviter d'effacer par erreur dans la BDD si configuration pas bonne.
    - Correction du mail envoyé aux amis : l'adresse email était à la place du nom dans le message.
    - Correction du numéro des factures lorsqu'on ne saisit pas de format précis dans peel_sites.
    - Correction en-tête du fichier + retrait mentions en bas de fichier.
    - Corrections du XHTML suite à nouvelle étude au validateur du code généré.
    - Correction d'un bug lors de la consultation d'une facture alors que le client associé à la facture n'existe plus dans la base peel_utilisateurs.
    - Correction du numéro de facture automatique.
    - Correction des "" encadrant iso-8859-1 dans les entêtes d'emails : ça créait des soucis d'affichage sur certains logiciels de messagerie.
    - Suppression d'une image en doublon.
    - Correction de bug à l'initialisation du caddie.
    - Correction d'un bug dans le formulaire de gestion des stocks par produits.
    - Correction d'un bug lors du traitement de formulaire de recherche quand il était vide
    - Correction d'un bug dans bannerHit dans l'include de configuration.inc.php.
    - Correction de bug dans le menu deroulant avec url_rewriting activé.
    - Correction de l'affichage de la date paiment sur les factures pdf
    - Correction de l'affichage des prix dans produit à la une.
    - Correction de l'affichage des simple quotes dans les facture pdf.
    - Correction de l'edition du nom d'un attribut.
    - Correction de la fonction affiche_contenu_html(). Ajout du deuxième paramètre ENT_QUOTES pour la fonction htmlspecialchars_decode_compat_php4
    - Correction lors de la duplication d'un produit : les images sont aussi copiés pour éviter les bugs lors des supressions.
    - Correction module dire à un ami
    - Corrections de plusieurs bug concernant le gestion des prix par lot (affichage HT/TTC inversée, requête pour chercher la TVA du produit concernée manquante).
    - Correction du lien pour devenir affilié. Le bug était corrigé dans le dossier modeles/blog mais pas dans standard

    Optimisation du code (rapidité, compatibilité, sécurité, homogénéité ... ) :
    - Optimisation du module thumbs.
    - Amélioration de la cohérence dans l'appel des méthodes de la classe caddie.
    - Uniformisation des 'lang' dans la base SQL.
    - Suppression du menu déroulant proposant plusieurs taux de TVA dans la gestion des attributs.
    - Lors de la création de proforma, mise de statut_paiement à 1 par défaut, car pas d'entrée pour statut_paiement à 0 dans peel_statut_paiement.
    - Modification des mysql_fetch_array par des mysql_fetch_assoc pour un plus faible usage de la mémoire et plus de rapidité.
    - Simplification du traitement des informations relative à la zone de livraison et au type de transport
    - Ajout d'un paramètre à certaines fonction affiche_XXX pour avoir un return au lieu d'un echo
    - Ajout de intval pour protéger du SQL
    - Ajout de la structure de documentation
    - Changement de $out en $output toujours par cohérence du code
    - Correction de la fonction nl2br() : on ne l'applique que si le texte n'est pas en HTML
    - Indentations mineures du code
    - Création d'un fichier de fonctions sur les stocks à partir d'un morceau de lib/fonctions/fonctions.php
    - Création d'un nouveau fichier de fonctions : fonctions/user.php
    - Création d'une librairie de fonctions fonctions/display.php à partir de fonctions/fonctions.php
    - Création d'une petite fonction dans modules/category_promotion/fonctions.php pour plus de cohérence
    - Création de get_country_select_options et remplacement partout dans le code des générations de listes de pays par des appels à cette fonctions
    - Création de get_payment_select_options dans fonctions/display.php
    - Création de la page order.php. Cette nouvelle librairie de fonctions contient les fonctions relatives au processus de commande.
    - Sécurisation de SQL et simplifications mineures
    - Suppression de '$method =' dans des arguments lors de l'appel à une fonctions
    - Suppression de divers "global $variable" qui ne servaient à rien
    - Suppression de lib/class/mail.php car script non utilisé
    - Suppression de sendfacturepdf() et remplacement par une extension de l'usage de sendclient() à laquelle on rajoute un second argument.
    - Suppression des fichiers historique_commande_details.php qui ne sont appelés nulle part
    - Amélioration de la cohérence de la gestion du recalcul du caddie après changement de zone géographique ou de type de port
    - Ajout de l'appel de fonctions_admin dans tous les fichiers d'administration
    - Amélioration de la fonction thumbs.
    - Création d'une librairie de fonctions de manipulation de la BDD pour pourvoir rendre compatible avec autre serveur que MySQL, et possibilité simple de faire ou non un die() en cas d'erreur de requête SQL
    - Fusion des sql_set pour INSERT et UPDATE des commandes, pour simplifier et éviter erreur à l'avenir si modification d'une partie et pas de l'autre
    - Suppression des derniers "or die(...) " qui restaient dans le code PHP lors de requêtes SQL
    - Passage de couleurs CSS de 3 à 6 chiffres pour plus d'homogénéité et de compatibilité
    - Passage de recupere_couleur et recupere_taille du fichier de la classe caddie vers le fichier de fonctions, pour avoir fichier de classe caddie bien propre
    - Protection sur la taille du code de la langue
    - Retrait des fonctions inutiles : cree_devis et creation_bl_pdf
    - Suppression de fonctions spécifique pour l'accueil : ajout d'un paramètre pour gérer des différences de rendu si on en veut
    - Suppression de la fonction creation_numero_facture qui ne sert nulle part et n'est pas fonctionnelle
    - Suppression de la fonction server_info et remplacement par $_SERVER[] qui est utilisé à plein d'endroits par ailleurs

    Vous pouvez nous appeler au 01 75 43 67 97 pour plus d'informations.
    • 0 réponse
    • 2 068 vues
  17. Gilles Boussin a ajouté un message dans un sujet  piratage   

    Bonjour Aquarelle,

    A priori je pencherais plus pour une attauqe direct du serveur qui vous héberge, que de votre poste de travail pour récupérer vos accès FTP.

    Dans le cas où vous êtes hébergée sur un serveur mutualisé, vous êtes-vous renseignée auprés de votre hébergeur afin de savoir si d'autres sites hébergés sur le même serveur ont connu le même souci?

    Cordialement,
    • 0
  18. Gilles Boussin a ajouté un message dans un sujet  Ma boutique est livrée... Que du bonheur   

    Réponse transmise par MP.

    Je clos donc ce sujet.
    • 0
  19. Gilles Boussin a ajouté un message dans un sujet  Problème de frais de port avec les poids!   

    Bonjour SerialMother,

    Effectivement votre solution répond à la problématique.

    Cordialement
    • 0
  20. Gilles Boussin a ajouté un message dans un sujet  erreur édition PDF   

    Bonjour,

    set_magic_quotes_runtime permet d'acitver ou non la directive de configuration PHP : magic_quotes_runtime. , cette dernière étant définie de la mnière suivante :

    Si magic_quotes_runtime est activé, toutes les fonctions qui obtiennent des données auprès d'une source externe, y compris les bases de données et les fichiers texte, verront leur guillemets échappés avec un antislash



    Théoriquement, cette fonctionnalité doit être à 0 sur votre serveur. (à vérifier tout de même)


    Je n'ai pas la solution immédiatement, pour corriger ce problème, mais il a bien été noté dans notre liste de corrections à apporter à PEEL.
    Je vous tiendrai donc au courant de l'avancée de ce sujet.

    Cordialement
    • 0
  21. Gilles Boussin a ajouté un message dans un sujet  produit en telechargement: besoin d'aide   

    Bonjour lspro,

    Je fais en sorte que vos accès FTP vous soient envoyés rapidement.

    Cordialement,
    • 0
  22. Gilles Boussin a ajouté un message dans un sujet  Fonction Zoom   

    Bonjour Isabelle,

    Pas de quoi ;)

    Et merci pour votre correctif, je n 'avais en effet pas testé ma proposition !

    Cordialement,
    • 0
  23. Gilles Boussin a ajouté un message dans un sujet  Ma boutique est livrée... Que du bonheur   

    Bonjour Marc,

    je vous réponds par MP immédiatement.
    • 0
  24. Gilles Boussin a ajouté un message dans un sujet  Saisie produits dans une commande   

    Bonjour DieselMan,

    Merci pour vos encouragements !

    N'hésites pas à poster de nouveau !
    • 0
  25. Gilles Boussin a ajouté un message dans un sujet  erreur 'undefined index' lors de la recherche   

    Pas de quoi ;)

    N'hésitez pas à re-poster de nouveau en cas de souci !

    Cordialement,
    • 0

Twitter Advisto ecommerce

Facebook PEEL Shopping