Sites Internet

Boostez les performances de votre entreprise avec des sites internet professionnels performants!

Pulsar Informatique développe des sites internet à haute valeur ajoutée en Joomla, Drupal et Zend Framework.

Boostez les performances de votre entreprise avec des sites internet professionnels performants!

APPLICATIONS MOBILES

Comment mieux exploiter les applications mobiles pour augmenter les performances de votre entreprise!

Boostez les performances de vos collaborateurs avec des applications mobiles efficaces!

Offre Web 360

module web360

Productivité et rentabilité de l'entreprise avec des outils performants orientés web 360.

 

Formations

Formez vos collaborateurs aux nouvelles technologies!

Formations autour du CMS Joomla (cck SEBLOD, HTML5, CSS3, développements PHP...)

 

   Accueil Actus Blog Categories PHP

Feel good, feel geek

Le blog de Pulsar Informatique!

PHP

Tout ce qui concerne le PHP

Prestashop: requêtes SQL pour nettoyer les transporteurs et copier les tranches de poids

Posted by Raphaelle Simonney
Raphaelle Simonney
Développeuse PHP depuis plus de 4 ans, j'ai travaillé sur Joomla! et Wordpressµ,
User is currently offline
on Dimanche, 23 Février 2014
in PHP

Nettoyage

Prestashop a une curieuse façon de gérer les transporteurs, ce qui fait que très vite les tables sont remplies pour rien. La suppression ne supprime pas vraiment, le champ deleted est à 1 bref.
Pour nettoyer tout ça, voici la procédure à suivre:
  1. Nettoyer la table ldt_carrier:

    DELETE from `ldt_carrier` WHERE deleted=1

  2. Nettoyer les autres tables correspondantes en supprimant tout ce qui avait un lien vec les données supprimées:

Prestashop: So Colissimo n'envoie pas les infos cadeaux (bis)

Posted by Raphaelle Simonney
Raphaelle Simonney
Développeuse PHP depuis plus de 4 ans, j'ai travaillé sur Joomla! et Wordpressµ,
User is currently offline
on Mardi, 18 Février 2014
in PHP

Les versions se suivent et se ressemblent avec La Poste, le module So Colissimo version 2.8.7 fonctionne aussi bien que son précédent, la correction à apporter est simplement différente!

Dans le fichier views/templates/front/socolissimo_fancybox.tpl

à l'intérieur de la fonction :

$('.delivery_option').each(function( ) {

ajouter les lignes suivantes:

$('input[name=gift]').change(function() {
                    $('#soLink').attr('href',  baseDir+'modules/socolissimo/redirect.php' + serialiseInput(soInputs));
                });
                
                $('#gift_message').bind('input propertychange', function() {
                    $('#soLink').attr('href',  baseDir+'modules/socolissimo/redirect.php' + serialiseInput(soInputs));
                });

Prestashop: So Colissimo n'envoie pas les infos cadeaux

Posted by Raphaelle Simonney
Raphaelle Simonney
Développeuse PHP depuis plus de 4 ans, j'ai travaillé sur Joomla! et Wordpressµ,
User is currently offline
on Vendredi, 07 Février 2014
in PHP
Les informations Paquet cadeau et message associé sont perdues lors d'une commande avec So Colissimo. Pour y remédier la solution est de modifier le fichier modules/socolissimo/validation.php du module v2.7.3 comme suit:

l80 remplacer:

$so->context->cart->gift = (int)$TRPARAMPLUS[1];


par

$so->context->cart->gift = ($TRPARAMPLUS[1]=="checked")?1:0;


et le tour est joué! :)

Forum PHP 2013 : nous y serons!

Posted by Jérémie
Jérémie
Jérémie has not set their biography yet
User is currently offline
on Jeudi, 24 Octobre 2013
in PHP
Pas moins de 3 membres de Pulsar seront présents pour cette édition 2013 du forum PHP qui s'annonce riche en perspectives!

Il reste encore quelques places, si vous ne vous êtes pas encore inscrits, c'est le moment!

Des hésitations? consultez notre retour du forum PHP 2012!

9714870895 527e0537c3



Tags: PHP, forum PHP, AFUP

Module GSitemap Prestashop: URLs non réécrites

Posted by Raphaelle Simonney
Raphaelle Simonney
Développeuse PHP depuis plus de 4 ans, j'ai travaillé sur Joomla! et Wordpressµ,
User is currently offline
on Lundi, 25 Mars 2013
in PHP

Encore un problème courant mais dont la solution n'est pas toujours bien indiquée: quand on lance le module Gsitemap, les URLs ne sont pas réécrites. (Je précise que j'utilise la version 1.5.1 de Prestashop.)

J'ai fait un premier essai en modifiant le fichier gsitemap (solution trouvée sur forum), j'ai obtenu de meilleurs résultats : les URLs sont réécrites, mais pas réécrites comme dans mon site. Il faut dire que j'avais overridé la réécriture d'URLs, et manifestement mon override n'était pas pris en compte.

Après debug, j'ai donc vu qu'il suffisait en fait d'overrider le fichier Dispatcher (donc créer le fichier override/class/Dispatcher s'il n'existe pas encore) pour lui dire d'utiliser la réécriture si je suis dans le module sitemap.  Il faut recopier dans ce fichier la fonction __construct, et y ajouter une ligne comme suit:
On remplace

// Select right front controller
        if (defined('_PS_ADMIN_DIR_'))
        {
            $this->front_controller = self::FC_ADMIN;
            $this->controller_not_found = 'adminnotfound';
            $this->default_controller = 'adminhome';
        }

par:

Prestashop Votre adresse e-mail est invalide et la page magasin s'affiche mal (erreur d'analyse xml)

Posted by Raphaelle Simonney
Raphaelle Simonney
Développeuse PHP depuis plus de 4 ans, j'ai travaillé sur Joomla! et Wordpressµ,
User is currently offline
on Mercredi, 20 Mars 2013
in PHP

Le jour où Prestashop m'a donné des envies de meurtre


J'ai constaté deux problèmes sur mon site Prestashop alors que je m'apprêtais à le passer en ligne:

  1. Un premier problème avec le module Mail alert qui enregistrait bien le mail utilisateur mais répondait "votre adresse email est invalide".
  2. Un deuxième problème avec la page magasin où l'icône du magasin n'apparaissait pas

Je n'ai pas de message d'erreur dans ma console firebug pour le premier problème avec le module Mail alert.
Pour le deuxième problème, j'ai le message d'erreur:

Erreur d'analyse XML : instruction de traitement XML ou texte pas au début d'une entité externe


Très vite un constat s'impose: il s'agit d'un seul et même problème. Les retours ajax qui semblent bon au premier abord sont en fait mal formatés. Un retour chariot s'est ajouté en début de ligne, et c'est ce retour chariot qui est la cause des deux problèmes.


Deuxième constat: comme ce problème se pose uniquement sur des retours ajax, il n'est absolument pas flagrant et je n'avais donc pas la moindre fichue idée d'où pouvait bien venir ce %*!$¨de retour chariot.

Après moults essais de modification de configuration, debug et autres joyeusetés, j'ai fini par trouver.

Recent Comments Show all comments
  • Raphaelle Simonney
    Raphaelle Simonney says #
    merci
  • Cobenan
    Cobenan says #
    De temps en temps, on tombe sur des problèmes de ce type avec Prestashop. C'est sympa de partager votre expérience!

Certaines valeurs de feature n'apparaissent pas dans les caractéristiques Prestashop

Posted by Raphaelle Simonney
Raphaelle Simonney
Développeuse PHP depuis plus de 4 ans, j'ai travaillé sur Joomla! et Wordpressµ,
User is currently offline
on Mardi, 19 Mars 2013
in PHP

Il arrive que dans l'admin de prestashop, dans le menu Produits/Caractéristiques, certaines valeurs n'apparaissent pas. Alors qu'elles apparaissent dans les valeurs proposées lorsqu'on renseigne une fiche produit.
En fait chez moi cela venait du fait que le site était en 1.4, et je l'ai passé en 1.5, mais les valeurs de base de données ont "mal suivi", et le champ custom de la table ldt_feature_value était dans certains cas à NULL, or la requête effectuée sur cette page est:

SELECT SQL_CALC_FOUND_ROWS b.*, a.* FROM `ldt_feature_value` a LEFT JOIN `ldt_feature_value_lang2` b ON (b.`id_feature_value` = a.`id_feature_value` AND b.`id_lang` = 2) WHERE 1 AND `id_feature` = 9 AND a.custom = 0

Les valeurs n'apparaissent donc pas car il faut que le champ custom soit à 0 et non NULL.

Il suffit donc d'exécuter la requête SQL suivante pour retrouver ses valeurs:

UPDATE `ldt_feature_value` SET custom=0 WHERE custom IS NULL



TECHNICAL ERROR: unable to save adresses - Prestashop

Posted by Raphaelle Simonney
Raphaelle Simonney
Développeuse PHP depuis plus de 4 ans, j'ai travaillé sur Joomla! et Wordpressµ,
User is currently offline
on Mardi, 22 Janvier 2013
in PHP

J'obtenais ce message d'erreur a priori de façon alétoire, lorsque je cliquais pour ajouter ou mettre à jour une adresse après avoir coché/décoché la case "Utiliser la même adresse pour la facturation".

Mes différentes recherches n'ayant abouti à aucune réponse satisfaisante (problèmes maintes fois rencontrés, mais pas toujours bien résolu), j'ai regardé le code de plus près pour aboutir au constat suivant:

Le message d'erreur "TECHNICAL ERROR: unable to save adresses" apparait en fait si l'appel ajax lancé par la case à cocher (la fonction updateAddresses) n'est pas terminé au moment de mon clic sur l'un des liens/boutons.

Recent Comments Show all comments
  • Raphaelle Simonney
    Raphaelle Simonney says #
    I've added it at the end of the post! You can paste the code, and it must be ok! have a nice day...
  • Isaac
    Isaac says #
    Sorry for the noob question but how is the final code supposed to look like in order-adress.js? Where do I "add" the code? Please ...
  • Bers
    Bers says #
    Thank you! Good idea!

Tutoriel - Ajouter un hook dans Prestashop v1.4

Posted by Raphaelle Simonney
Raphaelle Simonney
Développeuse PHP depuis plus de 4 ans, j'ai travaillé sur Joomla! et Wordpressµ,
User is currently offline
on Mercredi, 16 Janvier 2013
in PHP

Pour modifier le template Prestashop, il faut ajouter ce qu'on appelerait une position dans Joomla, dans Prestashop il s'agit d'un hook.

Et, pour ajouter un hook, on doit passer par 3 étapes...qui sont en fait la modification du modèle, du contrôleur et de la vue...le tout pour modifier un élément "visuel"...amusant. :)

Je détaillerai vers la fin, au cas où, l'ajout de ce hook au module, mais comme nous le verrons, cela se fait comme pour tous les hooks existants.

1 - Ajout du hook dans la BDD

insérer dans la BDD un premier élément dans la table hook:

INSERT INTO `ps_hook` (`name`, `title`, `description`) VALUES ('displayCenterleftColumn', 'Centerleft column blocks', 'hook rapha pour les modules au centre à gauche');

Tutoriel - Ajouter un hook dans Prestashop v1.5

Posted by Raphaelle Simonney
Raphaelle Simonney
Développeuse PHP depuis plus de 4 ans, j'ai travaillé sur Joomla! et Wordpressµ,
User is currently offline
on Mardi, 15 Janvier 2013
in PHP

Pour modifier le template Prestashop, il faut ajouter ce qu'on appelerait une position dans Joomla, dans Prestashop il s'agit d'un hook. Il faut savoir que Prestashop différencie les différents types de hook, le hook dont on parle ici est un hook Display.

Une première solution, la plus compliquée, consiste à passer par 3 étapes pour créer ce hook (ces trois étapes correspondent en fait la modification du modèle, du contrôleur et de la vue...), comme pour la précédente version 1.4 de Prestashop.

Une deuxième solution consiste à ajouter ce hook en l'attachant à un module, qui ne trouvant pas ce hook, le créera pour vous. Cette solution est bien sûr beaucoup plus simple et aisée, et fait gagner beaucoup de temps, c'est elle que je vais détailler ici:

Recent Comments Show all comments
  • Raphaelle Simonney
    Raphaelle Simonney says #
    Bonjour, effectivement c'est possible, c'est plus facile de créer ta position via le module comme expliqué dans cet article mais ...
  • souhael
    souhael says #
    Bonjour Je ne sais pas si il y a toujours quelqu'un sur ce sujet ... mais j'ai un soucis. Je souhaite pouvoir créer un Hook qu...
  • Raphaelle Simonney
    Raphaelle Simonney says #
    j'en suis ravie, c'est fait pour! ...

Derniers Commentaires sur le Blog

jinformatique

Merci pour le tuto sa m'a beaucoup aider. bonne continuation.

Raphaelle Simonney Bonjour,il faut placer ces codes dans le fichier index.php de votre template, entre les balises head...
Thomas script src="/baseurl; ?>/templates/template?>/js/cufon-replace.js"> script type="text/javascript" sr...
bill-roger Avec la classe DateTime c'est peut-être plus clair.$date = new DateTime(); $date->setISODate(2008, 2...
Raphaelle Simonney

I've added it at the end of the post! ;) You can paste the code, and it must be ok! have a nice day

Rappelez-moi !

  1. Email ou téléphone (*)

  2. Donnée invalide

Pour un projet de:

Donnée invalide