jcdhl

Utilisateur open source
  • Content count

    21
  • Joined

  • Last visited


Community Reputation

0 Neutral

About jcdhl

  • Rank
    Membre
  • Birthday 04/30/1973

jcdhl's Activity

  1. jcdhl added a post in a topic dans fonction.php, lors de reception de mail de commande   



    Bonjour,

    Pour avoir les infos clients il faut simplement ajouté ceci dans la focntion email_commande()


    $qid_utilisateur=mysql_query("select * from peel_utilisateurs WHERE id_utilisateur='$commande->id_utilisateur'");
    $utilisateur = mysql_fetch_object($qid_utilisateur);
    // Mail d'information envoyé à l'administrateur

    //$objet_commande="Une commande portant le numéro $commandeid vient d'être enregistrée sur le site $site.\n\n";
    $objet_commande="Une commande de $utilisateur->prenom $utilisateur->nom_famille ($utilisateur->email) portant le numéro $commandeid vient d'être enregistrée sur le site $site.\n\n";
    [/codebox]

    Pour les autres infos que tu souhaites, elles sont dans la table peel_commandes :

    client_info2 -> Adresse de livaraison
    transport -> Type de transport
    paiement -> Type de paiement

    Pour le téléphone, il est dans la table peel_utilisateurs.

    Cordialement
    Jcdhl
    • 0
  2. jcdhl added a post in a topic Comment mettre le logo dans le mail de confirmation de commande ??   



    Bonjour,

    Il faut définir des entêtes pour ton mail de cette façon :

    // Pour envoyer un mail HTML, l'en-tête Content-type doit être défini
    $headers = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

    Ensuite tu n'as plus qu'à envoyer ton mail :

    // Envoi
    mail($support, $objet, $message, $headers);

    Et $message peut-être définis comme suit :

    // message
    $message = "<html>
    <head>
    <title>Commande N°$commandeid</title>
    </head>
    <body>
    <img src="dzmlzdllzdl.com/image-logo.jpg" >....
    </body>
    </html>";


    Cordialement
    Jcdhl

    P.S. : Je ne t'oublis pas Négoce, je n'ai pas encore eu le temps de me pencher sur le problème pour avoir tous les détails du client dans ce mail
    • 0
  3. jcdhl added a post in a topic dans fonction.php, lors de reception de mail de commande   


    Bonjour,

    Je travaille actuellement dessus et dès que j'ai terminé je te le donne ici même.

    Cordialement
    Jcdhl
    • 0
  4. jcdhl added a post in a topic dans fonction.php, lors de reception de mail de commande   



    Bonjour,

    Je te donne le code que j'ai utilisé sur mon site je n'ai pas rencontré de bug.
    Il faut mette ce code dans fonctions.php dans la fonction "email_commande".


    $qid_commande = mysql_query("SELECT * FROM peel_commandes WHERE id = '$commandeid'");

    $qid_items = mysql_query("
    SELECT
    p.id
    ,p.reference
    ,oi.nom_produit
    ,oi.promotion
    ,p.prix AS curr_prix
    ,oi.prix AS purchase_prix
    ,oi.quantite
    ,oi.prix * oi.quantite AS total
    FROM peel_commandes_articles oi
    LEFT JOIN peel_produits p ON (oi.produit_id = p.id)
    WHERE commande_id = '$commandeid'
    ");

    $commande = mysql_fetch_object($qid_commande);
    // Mail d'information envoyé à l'administrateur
    $objet_commande="Une commande portant le numéro $commandeid vient d'être enregistrée sur le site $site.\n\n";
    $objet_commande.="Montant total de la commande AVEC frais de port : $com->montant €\n\n";
    $total_general=0;
    while ($prod = mysql_fetch_array($qid_items))
    {
    $objet_commande.="$prod[reference] | ";
    //$objet_commande.="$prod[id]\t";
    $objet_commande.=stripslashes($prod['nom_produit'])." | ";
    //$objet_commande.=fprix($prod['curr_prix'])."\t";
    $objet_commande.=fprix($prod['purchase_prix'])." | ";
    $objet_commande.="$prod[quantite] | ";
    $total = $prod['purchase_prix']*$prod['quantite'];
    $total_general+=$total;
    $objet_commande.=fprix($total)." €\n";
    }
    if ($commande->promo_libelle!="" || $commande->promo!="0")
    {
    $objet_commande.="\nRéduction : ";
    $objet_commande.=$commande->promo_libelle." | ";
    $objet_commande.="- ".$commande->promo." €\n\n";
    $total_general-=$commande->promo;
    }
    $objet_commande.="\nMontant total de la commande SANS frais de port : ".fprix($total_general)." €\n";

    mail(
    $support,
    "Nouvelle commande sur votre site web $site",
    $objet_commande,
    "FROM:$support");
    [/codebox]

    Cordialement
    Jcdhl
    • 0
  5. jcdhl added a post in a topic Création d'une page "Meilleures Ventes"   

    Bonjour,

    Dans ton code, remplace cette ligne :

    <?echo stripslashes($sortie['image1']) ?>

    par celle-ci :

    <img src="<?php echo $repertoire_images?>/<?php echo stripslashes($sortie['image1']) ?>" />

    En effet, dans la variable image1, c'est le nom de l'image qui est stocké :) .

    Cordialement
    Jcdhl
    • 0
  6. jcdhl added a post in a topic Page de recherche   



    Bonsoir,

    Si tu trouves une solution moins lourde, je suis preneur ;)

    Pour ma requête, j'ai été contraint de faire 2 left join de suite parce que les infos concernants l'état de la catégorie ne sont pas directement accessibles depuis la table "peel_produits".
    Il faut donc joindre les tables "peel_produits" et "peel_produits_categorie" pour savoir dans quelle catégorie est le produit et joindre en même temps les tables "peel_produits_categorie" et "peel_categorie" pour vérifier que l'état de la catégorie est "en ligne".

    Cordialement
    Jcdhl
    • 0
  7. jcdhl added a post in a topic Page de recherche   



    Bonjour,


    Voici l'ancienne requete utilisée pour la recherche :
    //$resultat = mysql_query("SELECT id, reference, nom FROM peel_produits WHERE etat = '1' AND nom LIKE '%" . addslashes($_GET['motclef']) . "%' OR descriptif LIKE '%" . addslashes($_GET['motclef']) . "%' LIMIT $start,$nb");

    et il faut la remplacer par celle-ci :

    $resultat = mysql_query("SELECT peel_produits.id, peel_produits.reference, peel_produits.nom FROM peel_produits LEFT JOIN peel_produits_categories ON peel_produits.id=peel_produits_categories.produit_id
    LEFT JOIN peel_categories ON peel_categories.id=peel_produits_categories.categorie_id WHERE peel_produits.etat = 1 AND peel_categories.etat = 1 AND (peel_produits.nom LIKE '%" . addslashes($_GET['motclef']) . "%' OR peel_produits.descriptif LIKE '%" . addslashes($_GET['motclef']) . "%') LIMIT $start,$nb");

    Explications :
    La catégorie du produit n'est pas directement disponible. Il faut donc passer par l'intermédiaire de 2 jointures succéssives pour trouver l'état de la catégorie du produit.

    La requête suivante sert pour faire la pagination:
    - Ancienne requete :
    //$result=mysql_query("SELECT COUNT(*) FROM peel_produits WHERE nom LIKE '%" . addslashes($_GET['motclef']) . "%' ");
    - Nouvelle requete :
    $result = mysql_query("SELECT COUNT(*) FROM peel_produits LEFT JOIN peel_produits_categories ON peel_produits.id=peel_produits_categories.produit_id
    LEFT JOIN peel_categories ON peel_categories.id=peel_produits_categories.categorie_id WHERE peel_produits.etat = 1 AND peel_categories.etat = 1 AND (peel_produits.nom LIKE '%" . addslashes($_GET['motclef']) . "%' OR peel_produits.descriptif LIKE '%" . addslashes($_GET['motclef']) . "%')");

    N'hésite pas à aller voir sur mon site tu verras que le fonctionnement est OK.
    exemple de recherche : fais une recherche sur le terme feuille. Alors que j'ai plusieurs sous-catégories pour les feuilles de scrapbooking dans la catégorie "scrapbooking" qui ne sont pas encore en ligne, tous les produits de ces catégories sont en lignes mais ils n'apparaitront pas dans les résultats de la recherche.

    Cordialement
    Jcdhl
    • 0
  8. jcdhl added a post in a topic Message d'erreur   


    C'est bien une adresse de chez Free parce qu'ils bloquent sinon ?
    jcdhl
    • 0
  9. jcdhl added a post in a topic Message d'erreur   



    Bonjour,
    Vérifie dans ton fichier php.ini que cette ligne soit bien configurée.
    Je suis également chez free et chez moi ça marche :

    [mail function]
    ; For Win32 only.
    SMTP = smtp.free.fr

    ; For Win32 only.
    sendmail_from = ton_adresse_email@free.fr

    • 0
  10. jcdhl added a post in a topic Page de recherche   

    L'avantage de cette solution, c'est qu'on peut préparer une catégorie avec un grand nombre de produits et quand on veut la mettre en ligne, on n'est pas obligé de passer sur chaque produit pour le mettre en ligne.
    On a juste à mettre la catégorie en ligne et hop le tour est joué. :D
    jcdhl
    • 0
  11. jcdhl added a topic in PEEL SHOPPING : logiciel open source de boutique en ligne   

    Page de recherche
    Bonjour,

    J'ai été confronté à un problème sur la page de recherche.
    Quand on fait une recherche sur un terme, il liste tous les produits qui sont en état actif sans se préocuper de l'état de la catégorie dans laquelle ces produits se trouvent.
    Dans les faits, nous avons des produits qui sont en état en ligne et pour éviter qu'ils s'affichent, nous avons mis la catégorie en attente.
    Jusque là tout parait normal.

    Mais si on fait une recherche, ces produits ressortent. J'ai donc modifié le formulaire de recherche pour qu'il n'affiche que les produits en ligne dont la catégorie est également en ligne.
    Si cela vous intérresse faite le moi savoir et je vous donnerai toutes les modifications que j'ai effectué.

    Cordialement
    jcdhl
    • 12 replies
    • 5,347 views
  12. jcdhl added a post in a topic Voila ma gestion de stock   



    Dans la page achat/modeles/caddie.php, il faut chercher la ligne :
    <input type="text" size="3" name="quantite[]" value="<?php echo $quantite?>" />

    Et la remplacer par :

    <select name="quantite[]" class="formulaire1">
    <?php // Affiche la quantité en stock
    $i=1;
    while ($i<=$prod['stock'])
    {
    echo "<option value=\"$i\"";
    if ($i==$quantite) {echo" selected";}
    echo " >$i</option>";
    $i++;
    }
    ?>
    </select>

    De cette façon, on a une liste déroulante avec la quantité en stock.
    La condition sert à sélectionner la quantité qu'on a ajouté.
    Il ne faut pas oublier de changer la fonction "recupere_articles_caddie" dans le fichier fonction.php pour avoir le stock disponible.
    juste la requete sql :
    $requete = "SELECT id, reference, nom, promotion, prix, tva, stock FROM peel_produits WHERE id IN ($in_clause)";

    jcdhl
    • 0
  13. jcdhl added a post in a topic Voila ma gestion de stock   



    J'ai bien rajouter le champ stock dans la requete sql qui ramenne les infos sur le produit :

    $sql = "SELECT p.id, p.reference, p.nom, p.promotion, p.descriptif, p.description, p.image1, p.prix, p.on_special, p.stock, p.typeenvoi, p.poids, pc.categorie_id FROM peel_produits p, peel_produits_categories pc WHERE p.id = pc.produit_id AND pc.categorie_id = $catid AND p.etat = 1 ORDER BY p.LIMIT $start,$nb";

    jcdhl
    • 0
  14. jcdhl added a post in a topic Voila ma gestion de stock   


    J'ai crée le champ stock dans la table peel_produit
    Sur la page achat/index.php je crée un champ de type 'hidden' pour mettre le stock et j'affiche le stock disponible sous forme de liste déroulante :
    J'utilise cette même liste déroulante pour le caddie et pour la fiche détail du produit.

    <input type="hidden" name="stock" value="<? echo $prod['stock']; ?>">
    <span class="impression" >
    <? if ($prod['stock']>0){
    ?>
    Quantité :
    <select name="qte" class="formulaire1">
    <?php // Affiche la quantité en stock
    $i=1;
    while ($i<=$prod['stock'])
    {
    echo "<option value=\"$i\">$i</option>";
    $i++;
    }
    ?>
    </select>

    Et ensuite, j'ai modifié la page caddie_ajout.php comme ceci :
    $_SESSION['caddie']->ajout($_REQUEST['id'], $_REQUEST['qte'], $_REQUEST['stock']);
    $_SESSION['caddie']->nettoie();
    $_SESSION['caddie']->recalc_total();

    $HTTP_REFERER = $_SERVER['HTTP_REFERER'];

    if (! empty($HTTP_REFERER)) {
    header("Location: $HTTP_REFERER");
    } else {
    header("Location: $wwwroot/index.php");
    }
    Je peux donc tester lors de l'ajout si la quantité voulue n'est pas supérieure à la quantité disponible.
    Cordialement
    jcdhl
    • 0

Twitter Advisto ecommerce

Facebook PEEL Shopping