davidubois de Montpellier

Utilisateur open source
  • Compteur de contenus

    19
  • Inscrit(e) le

  • Dernière visite


Messages posté(e)s par davidubois de Montpellier


  1. En théorie oui, chargez la base avec le fichier exemple csv founit :)
    Le fichier exemple_prod.csv contient
    1;0;REF1;Nom du produit en FR;123;19.6;0;100;0;Sony;REF CONS 1;image1.gif;image2.gif; ceci est un descriptif du produit;1

    1;0;REF2;Nom du produit en FR;123;19.6;0;100;0;Sony;REF CONS 1;image1.gif;image2.gif; ceci est un descriptif du produit;1

    2;0;REF3;Nom du produit en FR;123;19.6;0;100;0;Sony;REF CONS 1;image1.gif;image2.gif; ceci est un descriptif du produit;1

    2;0;REF4;Nom du produit en FR;123;19.6;0;100;0;Sony;REF CONS 1;image1.gif;image2.gif; ceci est un descriptif du produit;1

    2;0;REF5;Nom du produit en FR;123;19.6;0;100;0;Sony;REF CONS 1;image1.gif;image2.gif; ceci est un descriptif du produit;1

    et le script d'import contient
    $cat1_id = $liste[$i];

    $cat2_id = $liste[$i+1];

    $reference = addslashes($liste[$i+2]);

    $nom = addslashes($liste[$i+3]);

    $prix = $liste[$i+4] * (1 + $liste[$i+5]/100);

    $prix = str_replace(",",".",$prix);

    $tva = str_replace(",",".",$liste[$i+5]);

    $promotion = str_replace(",",".",$liste[$i+6]);

    $poids = str_replace(",",".",$liste[$i+7]);

    $point = str_replace(",",".",$liste[$i+8]);

    $image1 = $liste[$i+9];

    $image2 = $liste[$i+10];

    $marque = addslashes($liste[$i+11]);

    $reference_fournisseur = addslashes($liste[$i+12]);

    $descriptif = addslashes($liste[$i+13]);

    $etat = intval($liste[$i+14]);

    donc la variable $image1 contient la marque, $image2 la réf constructeur, $marque l'image miniature et $reference_fournisseur = l'image zoom.

    et

    $requete = "INSERT INTO ".$_POST['nomtable']." (

    reference

    , nom_".$_SESSION['langue']."

    , prix

    , tva

    , promotion

    , poids

    , points

    , image1

    , image2

    , marque

    , reference_fournisseur

    , descriptif_".$_SESSION['langue']."

    , etat

    , date_insere

    , date_maj

    )

    VALUES (

    '".$reference."'

    , '".$nom."'

    , '".$prix."'

    , '".$tva."'

    , '".$promotion."'

    , '".$poids."'

    , '".$point."'

    , '".$marque."'

    , '".$reference_fournisseur."'

    , '".$image1."'

    , '".$image2."'

    , '".$descriptif."'

    , '".$etat."'

    , now()

    , now()

    )";

    et tout est importé correctement mais la lecture du script php est troublante ! Les 4 variables ne contiennent pas ce que suggère leur nom... Est-ce que le reste de l'application est aussi confusionnel ? B)

    Personnellement, j'ai corrigé mon script afin d'améliorer la maintenance et d'implémenter l'import par update des références existantes !

    J'ai vu un fichier xml contenant apparemment un export de la table produit.

    Existe-t-il un import à partir du xml ?

    Si non, est-ce en projet ?

    Ce serait très utile dans le cadre de transmission de données B2B !!!


  2. La documentation est forcément bonne car un projet commence toujours par la rédaction et le coding vient après !

    Donc, en v2.9, il faut également changer

    $image1 = $liste[$i+9];

    $image2 = $liste[$i+10];

    $marque = addslashes($liste[$i+11]);

    $reference_fournisseur = addslashes($liste[$i+12]);

    en
    $marque = addslashes($liste[$i+9]);

    $reference_fournisseur = addslashes($liste[$i+10]);

    $image1 = $liste[$i+11];

    $image2 = $liste[$i+12];


  3. Bonjour,

    En étudiant la faisabilité d'un traitement de masse import/update par le script /administrer/import_produits.php, j'ai lu ceci :

    $requete = "INSERT INTO ".$_POST['nomtable']." (

    reference

    , nom_".$_SESSION['langue']."

    , prix

    , tva

    , promotion

    , poids

    , points

    , image1

    , image2

    , marque

    , reference_fournisseur

    , descriptif_".$_SESSION['langue']."

    , etat

    , date_insere

    , date_maj

    )

    VALUES (

    '".$reference."'

    , '".$nom."'

    , '".$prix."'

    , '".$tva."'

    , '".$promotion."'

    , '".$poids."'

    , '".$point."'

    , '".$marque."'

    , '".$reference_fournisseur."'

    , '".$image1."'

    , '".$image2."'

    , '".$descriptif."'

    , '".$etat."'

    , now()

    , now()

    )";

    Les colonnes image1, image2, marque, reference_fournisseur prennent resectivement les valeurs $marque, $reference_fournisseur, $image1 et $image2.

    Est-ce une erreur corrigée dans les versions ultérieures ?

    DDD


  4. Yop

    Je suis de l'avis des autres, pas besoin de MCD pour une petite base comme ca, la base est tres claire.
    Je n'ai pas les scripts de création du SGBD et je n'ai pas le temps de d'installer php, mysql, ..., récupérer un dump de la base. Si le mcd existe pourquoi ne pas le donner ?
    Même si mon expérience et mon salaire ( :) ) sont moins élevés
    navré de mettre exhiber mais c'était à la fois provoc et pour appuyer la justification de mon besoin
    , je sais trouver les clefs, les index et les relations entre les tables par leur nom ou via phpmyadmin sur des bases simples et bien faites.
    Je n'ai pas le temps de chercher de faire du reverse.
    Pour moi pas besoin de MCD pour PEEL, ou alors il faut se la faire soit même en même pas une journée...
    à partir de quoi ?
    Apre ssi on ne veut pas mettre les mains dans le camboui, c'est une autre histoire,
    C'est mon cas... ou plutôt j'aimerais étudier le plan avant d'y mettre les mains afin de ne pas me faire mal en y touchant...
    mais en regardant les tables on apprendra aussi a les utiliser.
    Je n'ai pas accès à ces tables pour le moment. Comment faire ? à partir des scripts de création ? Comment accéder à mysqladmin sur l'hébergement peel.fr ? Etant newbie,j'ai besoin d'info que ce soit un mcd ou bien la doc avec les urls et les login adéquat... je n'ai qu'un login ftp pour mettre à jour les scripts php et un login admin pour accéder à l'interface back office
    Ca n'est pas se rabaisser que de regarder dabns les tables et il n'y a pas bcp de temps a passer pour comprendre celles de PEEL.

    Willy

    AMHA, il est dommage de ne pas profiter du gain de temps "mcd" mais bon je ne vais pas insister...

  5. Bonjour,

    je ne comprend pas ton besoin

    étudiant en bts informatique dev, crois moi pas de besoin de mcd si tu es vraiment informaticien...

    Moi, 39 ans, DUT Informatique de gestion et 17 années d'expérience ( lire mon cv dont j'ai donné le lien précédemment ). Je ne suis plus informaticen mais Ingénieur d'études ou Consultant Technique ou consultant sénior. La formation DUT comportait 4 ou 8 heures/semaine de méthodologie MERISE donc analyse/mcd etc....
    pour moi ca me parait aussi clair que si je l'avai fait moi meme.
    Si vous y passez 100% de votre temps alors oui il est facile de connaître le schéma SGBD mais je n'a pas le temps donc il me faut les clés pour concevoir rapidement et développer sans débugguer pendant des heures à cause d'une erreur de conception ! Un MCD est également un outil simple de communcation entre concepteurs. Avec un mcd, je pouras expliquer facilement à un autre concepteur, un problème sans qu'il doive investir beaucoup de temps ! Demandez l'avis de vos professeurs ! Quand on me recrute, il est facile de convaincre un directeur ou un chef de projet à partir du moment où vous maitrisez une méthode d'analyse, de plus, cela se révèle utile pour négocier mon salaire. Mon dernier salaire était de 4250€ brut mensuel et encore ce n'était pas exagéré B)
    Pourquoi besoin de te refaire le mcd?

    Une requete multitable?

    par exemple...

    Le MCD, c'est la carte routière de la base de données : elle est particulièrement utile pour les nouveaux arrivants car elle permet une prise en main très très très très rapide, cela permet de concevoir, de développer avec beaucoup de fiabilité et plus rapidement, etc...

    J'ai l'habitude de travailler sur des projets "grands comptes" avec au moins une centaine de tables, des milliers d'écrans, ...

    J'aime l'outil informatique pour le gain de temps qu'il m'apporte : ce mcd pourrait me faire gagner 1 à 5 journées de travail d'analyse !

    Pourquoi ne pas me donner ou me vendre le MCD si il existe ?! Est-il confidentiel défense ( je suis habilité - en 1990, j'ai cotoyé les pilotes des escadrons de Jaguars BA113 qui sont allés en Irak en 1991 :( )

    ++

    J'arrive souvent sur des projets qui ont des problèmes : tu m'étonnes, pas mcd à jour donc erreurs de dév :)


  6. Bonjor

    Si vous souhaitez travailler pour PEEL de manière rémunéré, il faut me faire parvenir vos projets écrits en PHP

    Je cherche actuellement une personne pour me donner un coup de main pour finir le passage de PEEL PREMIUM en CSS2 complet et pour mieux séparer mise en forme et développement

    Mais je souhaitez voir avant les codes que vous avez déjà réalisé

    J'ai une longue expérience des développements en gestion pas en technique CSS2, donc votre offre ne correspond pas à mon profil.

    J'aimerais néanmoins ajouter des fonctionalités en backoffice et pour cela, j'aurais besoin d'un MCD afin de comprendre l'architecture... Je pourrais faire un reverse mais j'aime l'informatique pour le gain de temps !...


  7. Merci...

    Où puis trouver :

    - la liste des tables de la base ?

    - la liste des colonnes de chaque table ?

    - la liste des relations entre les tables ?

    - les index des tables ?

    - toutes les infos permettant de manipuler le SI...


  8. Bonjour Willy,

    Bonjour,

    c'est quoi ( MCD MLD MPD ) ?

    Modèle Conceptuel de Données / Modèle Logique de Données / Modèle Physique de Données en analyse relationnelle Méthode Merise.

    Cela permet de voir/comprendre les relations entre les entités/tables...

    C'est un plan, un schéma du système d'information (SI) / de la base de données (BD) !

    Concernant le code, c'est fait différemment :

    dans la function affiche_liste_produits($start, $frm)

    - Suppression de l'order by dans les 2 affections

    $Links-> SqlRequest = "SELECT....

    - Ajout du code suivant :

    //+DDU le 02/03/2007

    switch (vb($_REQUEST['orderby'])) {

    case "R" :

    $Links-> SqlRequest = $Links-> SqlRequest." ORDER BY p.reference";

    break;

    default :

    $Links-> SqlRequest = $Links-> SqlRequest." ORDER BY p.id DESC";

    break;

    }

    -Modification du libellé référence :

    <th class="menu"><a href="<?echo $wwwroot?>/administrer/produits.php?orderby=R">R&eacute;f&eacute;rence</a></th> //+DDU le 02/03/2007

    et ça marche

    Donc différent de ton code...

    Ayant fait du php en 1996 - autodidacte et pour m'amuser, pas professionnellement, je suis rester à php3 donc pas objet et pas très familier avec toutes les apis et verbes comme isset...

    Mais j'ai un excellent niveau C ( + de 10ans d'xp) et 4 ans d'xp en java en environnement j2ee donc je ne pars de zéro :)

    Peux-tu critiquer mon code ? STP MERCI !

    Donc... a priori, j'ai réussi la première évolution de "ma boutique" et je ne vais pas m'arrêter...

    Est-il intéressant de mettre en commun ces évolutions userFriendly + adminFriendly ?

    sous quelles conditions ?


  9. Bonjour,

    Actuellement en recherche d'emploi - ingénieur d'études / analyste programmeur, j'ai beaucoup de temps à consacrer à la société dont je suis actionaire et cliente de peel.fr

    pour info http://ddu.work.free.fr/DD%20CV%20DUBOIS%20David.pdf

    Je souhaite améliorer l'interface : par exemple, en backoffice, dans la gestion des produits (administrer/produits.php), je souhaite ajouter un lien sur les entêtes de colonnes permettant d'effectuer le tri (sql order by) sur la colonne...

    Il me faut donc des informations ( MCD MLD MPD )... Comment les obtenir ?

    Est-ce que ces développements pouraient être capitalisés ?

    Cordialement,

    David DUBOIS


  10. OK...

    Etant le "directeur technique" :P - bénévole - de la société, je suis en charge de l'écriture des procédures techniques liées à la maintenance informatique... Donc je le note dans les procédures "import produits" - voire "import *.*" - et "upgrade version logicielle du site" !

    Bonne journée à tous.

    A+ David DUBOIS de Montpellier - Expert NatStar / Ingénieur d'études j2ee - en recherche d'emploi !


  11. En supprimant, le dernier CarriageReturn - qui implique une ligne vide en fin de fichier - alors l'importation est parfaite !

    Question : pouquoi le serveur détecte l'upload comme "application/octet-stream" ?

    Question à 2 balles : j'ai modifié le fichier configuration.inc.php, je suppose que lors d'un upgrade de version logicielle du site alors ce fichier est repris, non ? Comment cela (l'upgrade) se passe ?


  12. J'avais oublié de modifier :

    $allowed_types = array("image/gif", "image/pjpeg", "image/jpeg", "image/x-png", "image/png","text/comma-separated-values","text/plain","application/octet-stream");

    Type de fichier importé : application/octet-stream

    Emplacement du fichier : /home/commandewe/domains/commandeweb.com/public_html/administrer/upload/010307_160401_PEEL_MzvNy3.csv

    Statut de l'importation Notice: Undefined offset: 1 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 89

    Notice: Undefined offset: 2 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 91

    Notice: Undefined offset: 3 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 93

    Notice: Undefined offset: 4 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 95

    Notice: Undefined offset: 5 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 95

    Notice: Undefined offset: 5 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 99

    Notice: Undefined offset: 6 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 101

    Notice: Undefined offset: 7 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 103

    Notice: Undefined offset: 8 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 105

    Notice: Undefined offset: 9 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 107

    Notice: Undefined offset: 10 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 109

    Notice: Undefined offset: 11 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 111

    Notice: Undefined offset: 12 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 113

    Notice: Undefined offset: 13 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 115

    Notice: Undefined offset: 14 in /home/commandewe/domains/commandeweb.com/public_html/administrer/import_produits.php on line 117

    Nombre de produits importés avec succès : 68.

    Je progresse donc import ok reste à faire qu'il soit parfait !

    Merci de votre aide


  13. Et pourquoi ne pas ajouter:

    "application/octet-stream" => ".csv",

    tentez et dites nous.

    Willy

    Même punition et en plus :

    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/commandewe/domains/commandeweb.com/public_html/configuration.inc.php:1) in /home/commandewe/domains/commandeweb.com/public_html/configuration.inc.php on line 81

  14. Comme je disais dans mon premier post :

    Type de fichier importé : application/octet-stream

    Le fichier de configuration "configuration.inc.php" contient bien l'autorisation d'upload des fichiers csv :

    $registered_types = array(

    /*"application/x-gzip-compressed" => ".tar.gz, .tgz",

    "application/x-zip-compressed" => ".zip",

    "application/x-tar" => ".tar",

    "image/bmp" => ".bmp, .ico",*/

    "image/gif" => ".gif",

    "image/pjpeg" => ".jpg, .jpeg",

    "image/jpeg" => ".jpg, .jpeg",

    "image/x-png" => ".png",

    "image/png" => ".png",

    "text/plain" => ".html, .php, .txt, .inc, .csv",

    "text/comma-separated-values" => ".csv",

    /*"text/richtext" => ".txt, .rtf",

    "application/pdf" => ".pdf",*/

    /*"application/msword" => ".doc",

    "application/x-shockwave-flash" => ".swf",

    "application/ved.ms-excel" => ".xls",

    "application/octet-stream" => ".exe, .fla (etc)"*/

    );

    Il y est même 2 fois : ne serait-ce pas une de trop ?!

    ou... Une autre piste ?

    DDD


  15. Bonjour,

    Je suis un des administrateurs du site commandeweb.com en v2.9.2 hébergé par peel.

    J'aimerais importer une liste de produits.

    Mon fichier pdts.csv (extrait) :

    <<

    18;0;3259190333390;"LE LOUP GAROU";8,25;1;0;110;0;"Universal Pictures";3259190333390;;;"BlaBla...";0

    18;0;3259190362499;"BEETHOVEN 4";8,25;1;0;110;0;"Universal Pictures";3259190362499;;;"BlaBla...";0

    18;0;3259190379794;"PSYCHO";8,25;1;0;110;0;"Universal Pictures";3259190379794;;;"BlaBla...";0

    ><

    L'upload donne l'erreur suivante :

    <<

    Type de fichier importé : application/octet-stream

    Attention :

    Le type de fichier que vous essayez d'uploader n'est pas autorisé, vous ne pouvez télécharger des fichiers que du type :

    .gif (image/gif)

    .jpg, .jpeg (image/pjpeg)

    .jpg, .jpeg (image/jpeg)

    .png (image/x-png)

    .png (image/png)

    .csv (text/comma-separated-values)

    .html, .php, .txt, .inc, .csv (text/plain)

    Emplacement du fichier : /home/commandewe/domains/commandeweb.com/public_html/administrer/upload/

    Statut de l'importation

    >>

    Qu'est-ce qui ne va pas ?

    David DUBOIS de Montpellier

Twitter Advisto ecommerce

Facebook PEEL Shopping