macao45

Utilisateur open source
  • Compteur de contenus

    302
  • Inscrit(e) le

  • Dernière visite


Messages posté(e)s par macao45


  1. bonsoir,

    pourquoi alors prendre la version shopping ??

    elle est la pour mettre à pied à l'étrier et voir les possibilitées mais il reste des trucs à mettre en place et à affiner.

    si vous etes devellopeur, c'est la distribution qu'il faut etant donné que vous avez les sources et que vous savez ce qu'il vous manque pour finaliser cette distribution.

    Regardez les produits clef en mains, les prix, les prestations , la personnalisation ,et vous verrez que PEEL offre beaucoup d'avantages à condition d'y passer un peut de temps.

    je pense que Patrice répondra aussi à ce message, mais dites vous que pour s'engager sur un produit avec un client il faut d'abords en faire le tour et le maitriser de bout en bout ( si c'est un client vous devez surement lui facturer une prestation) .

    J'ai fais le choix de PEEL shopping car facile à comprendre et à adapter et sans contraintes depuis le 2.9

    il y a des bugs, des insuffisances mais les bases sont la, et il suffit d'aider et de participer à ce projet en OPEN SOURCE pour l'aider à s'améliorer.


  2. il suffit de remplacer

    header("LOCATION:$wwwroot/direaunami.php");

    die;

    par

    header("LOCATION:$_SESSION['url2']");

    die;

    il faut peut etre mettre une troisième variable de session .... je sais pas

    $_SESSION['url3']= $_SESSION['url2'];

    $_SESSION['url2']= $_SESSION['url1'];

    $_SESSION['url1']= $_SERVER['HTTP_REFERER'];

    mais avec ça tu remonte dans ta nagivation avec autant de page en arrière que tu veux et donc tu redirige sur n-1 ou n-x celon tes besoins :rolleyes:


  3. par defaut le repertoire cgi est en général au niveau du www de votre site

    ce repertoire permet de mettre des scripts executables

    logiquement vous devriez avoir une documentation complete avec exemple de cette mise en place ainsi qu'un compte de test pour valider les echanges entre la banque et votre site.

    comme vous etes avec la version de PEEL SHOPPING vous devez vous debrouillez seul pour la mise en place de modules.

    sinon, comme le dit Patrice, vous passez par peel pour mettre en place un module sur votre site


  4. petit bug dans le menu de l'admin (rien de grave non plus) :

    1) le menu contient des + pour deplier le menu , quand on clic ça deplie .... jusque la normal!!

    SAUF ....

    quand on clic sur Ajouter un billet tous les + disparaissent ou Ajouter categories ou Ajouter produits ....... bref le menu n'aime pas mode=ajout

    2) la celui la il est super sympa ....

    Dans le contenu HTML quand on clic sur gauche centre droite pour la mise en page c'est le haut de la page d'admin qui bouge !!!

    apres un passage bref dans tous les menus ....

    * positionement des produits dans les catégories en une seule passe ..... SUPER

    * changement des prix et des positionements pour les produits .... vive les array dans les form

    le tarif en fonction du poids sur izzotek j'avais fais sous cette forme avec le poids la zone et le prix

    Action Type Poids Montant Pays Continent

    International Colissimo (parcel with insurance) 0.24 30.00 World Asia Africa Australiasia Caribbean South-America Middle-East North-America

    International Colissimo (parcel with insurance) 0.49 30.00 World Asia Africa Australiasia Caribbean South-America Middle-East North-America

    International Colissimo (parcel with insurance) 0.74 30.00 World Asia Africa Australiasia Caribbean South-America Middle-East North-America

    pour le haut et le pieds de page, toujours sur izzotek, il est fait par categories

    tres bonne évolution du code et des fonctionalitées tres bonne version de base pour se lancer dans le Ecommerce

    ---------------------------------------------------------------------------------

    et j'ai trouvé pourquoi ça bloquait ... et c'est bien le rss ....

    ligne 38 $rss -> parsefile('http://www.peel.fr/rss/peel.rss', 20);

    quand on a pas de sortie vers le web ..... on attend le timeout!!!


  5. quelle truffe je suis moi !!

    if (! $_SESSION[utilisateur][nom_famille]) {

    c'est un array dans un array !!!

    par contre faut virer tout les espaces et les retours lignes

    <?

    include("configuration.inc.php");

    $DOC_TITLE = "$site";

    if (!isset($_SESSION['utilisateur']['nom_famille'])) {

    header("Location: utilisateurs/enregistrement.php");

    die;

    }

    define('IN_HOME', TRUE);

    et la c'est nickel !!


  6. installation sur un autre serveur ... meme topo tant que je reste sur l'index du site tout est bon , mais des que je rentre dans l'admin ... c'est mort!!!

    il y a quelque chose qui colle pas du coté admin ...

    les seuls messages d'erreur d'apache c'est

    File does not exist: /var/www/apache2-default/peel4/images/close.gif je vais donc mettre cette petite image ... mais le problème n'est pas la!!

    je met PHP en mode full trace et je regarde

    --------------------------------------------------------------------------------------------------------------------------

    petite remarque le fichier peel.sql n'est pas pris en compte dans l'installation , donc il n'y a aucun articles,catégories,produits dans la base


  7. Je viens de mettre le code sur un site avec base

    bug

    /administrer/societe.php

    ligne 94 une ) de trop en fin de ligne

    Modif à faire si vous etes sans acces web (avec proxy ou filtrage URL)

    /administrer/index.php virer ou commentez les lignes de 35 à 93 pour ne plus avoir de flux rss

    il y a un google analytics dans /modeles/standard/bas.php à commenter aussi ou changer le N° de client

    MAIS je n'arrive pas à avancé plus que ça !!!

    ENORME lenteur .... sur l'ensemble du site ( front et back )

    je soupconne les sessions ( les autres bases et sites du serveur ne rament pas )

    dans marques.php par exemple erreur ligne 99 foreach ($_SESSION['lng'] as $lng) {

    il doit donc me manquer la définition de lng quleque part ............. je sents que je vais forcer ça dans configuration.inc.php


  8. bonsoir,

    comme promis un peut de php .... d'abord dans administrer/modeles/haut.php un ajout de lien

    <li> <a href="<?=$wwwroot?>/administrer/envoie_email.php">Texte mail</a></li>

    ensuite le code de envoie_email.php qui est repris de la tva.php ..... les commentaires sont encore la !!

    on commence par le corps de la page

    <?

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

    necessite_identification();

    necessite_priv("admin");

    $DOC_TITLE = "Gestion des textes de mail";

    include("modeles/haut.php");

    if (isset($_GET['start'])) {$start = $_GET['start'];} else {$start = 0;}

    if (isset($_POST['mode'])) {$mode = $_POST['mode'];}

    elseif (isset($_GET['mode'])) {$mode = $_GET['mode'];}

    else {$mode = "liste";}

    switch ($mode) {

    case "ajout" :

    liste_commande();

    affiche_formulaire_ajout_mail();

    break;

    case "envoi" :

    $tt=mysql_fetch_array(mysql_query("SELECT id FROM `".$nick."_commandes` order by id desc limit 1"));

    $res=remplace($_REQUEST['nom'],$tt['id']);

    echo "<pre>";

    echo $res;

    echo "</pre>";

    //email_vari($quoi,&$message,"10039");

    break;

    case "modif" :

    liste_commande();

    affiche_formulaire_modif_mail($_GET['id']);

    break;

    case "suppr" :

    supprime_mail($_GET['id']);

    affiche_liste_mail($start);

    break;

    case "insere" :

    insere_mail($_POST['id'], $HTTP_POST_VARS);

    affiche_liste_mail($start);

    break;

    case "maj" :

    maj_mail($_POST['id'], $HTTP_POST_VARS);

    affiche_liste_mail($start);

    break;

    default :

    affiche_liste_mail($start);

    break;

    }

    if ($_REQUEST["action"]){

    $nume = $_REQUEST["mailletter"];

    email_mail(&$nume);

    }

    include("modeles/bas.php");

    ensuite les fonctions et la mise en forme

    /******************************************************************************

    * FONCTIONS

    *****************************************************************************/

    function affiche_formulaire_ajout_mail() {

    /* Affiche un formulaire vierge pour ajouter un tva*/

    global $nick,$frm;

    /* Valeurs par d�aut */

    $frm['nouveau_mode'] = "insere";

    $frm[''] = "";

    $frm['titre_bouton'] = "Ajouter";

    affiche_formulaire_mail();

    }

    function affiche_formulaire_modif_mail(&$id) {

    /* Affiche le formulaire de modification pour le tvas�ectionn�*/

    global $nick,$frm;

    /* Charge les informations du produit */

    $qid = mysql_query("

    SELECT *

    FROM ".$nick."_mail

    WHERE id = $id

    ");

    $frm = mysql_fetch_array($qid);

    $frm['nouveau_mode'] = "maj";

    $frm['titre_bouton'] = "Sauvegarder";

    affiche_formulaire_mail();

    }

    function affiche_formulaire_mail() {

    GLOBAL $nick,$frm,$id,$wwwroot;

    ?>

    <form name="entryform" method="post" action="<?=$_SERVER['PHP_SELF']?>?start=0">

    <input type="hidden" name="mode" value="<?=$frm['nouveau_mode']?>">

    <input type="hidden" name="id" value="<?=$frm['id']?>">

    <table class=normal border=0 width=100% cellpadding="0" cellspacing="1">

    <tr><td colspan="2" height="1" bgcolor="#336699"><img src="/images/blank.gif" height="1"></td></tr>

    <tr bgcolor="#EEEEEE">

    <td class=label colspan="2">Ajouter un mail</td>

    </tr>

    <tr><td colspan="2" height="1" bgcolor="#336699"><img src="/images/blank.gif" height="1"></td></tr>

    <tr>

    <td class="normal">nom du mail<input class="formulaire1" type="text" name="nom" style="width:40%" value="<?=$frm['nom'] ?>">

    </td>

    </tr>

    <tr>

    <td class="normal" >texte du mail :</td>

    </tr>

    <tr>

    <td colspan=2 class="normal">

    <textarea name="texte" cols=100 rows=20><?=stripslashes($frm['texte'])?></textarea>

    </td>

    </tr>

    <tr>

    <td colspan="1"><input class="bouton" type="submit" value="<?=$frm['titre_bouton'] ?>"></td>

    <td colspan="1"><input class="bouton" type="submit" name=mode value="envoi"></td>

    </tr>

    </table>

    </form>

    <?

    }

    function supprime_mail($id) {

    global $nick;

    /* Supprime le tvasp�ifici�par $id. Il faut supprimer le tva

    * puis les entr�s correspondantes de la table tva_categories. */

    /* Efface le tva*/

    $qid = mysql_query("DELETE FROM ".$nick."_mail WHERE id = $id");

    ?>

    <p class=normal>

    La mail a �t� �ffac�

    </p>

    <?

    }

    function insere_mail($id, $frm) {

    global $nick;

    /*ajoute le tvadans la table tva*/

    $nom = addSlashes($frm['nom']);

    $texte = addSlashes($frm['texte']);

    $qid = mysql_query("INSERT INTO ".$nick."_mail (nom,texte) VALUES ('$nom','$texte')");

    }

    function maj_mail($id, $frm) {

    global $nick;

    /* Met �jour le tva$id avec de nouvelles valeurs. Les champs sont dans $frm */

    /* Met �jour la table tva*/

    $nom = addSlashes($frm['nom']);

    $texte = addSlashes($frm['texte']);

    $qid = mysql_query("UPDATE ".$nick."_mail SET nom = '$nom' , texte = '$texte' WHERE id = '$frm[id]'");

    }

    function affiche_liste_mail($start)

    {

    global $nick;

    $qid = mysql_query("select * from ".$nick."_mail order by id asc ");

    ?>

    <table border=0 cellpadding=0 cellspacing=1 width=100%>

    <tr>

    <td colspan=4><a class=normal href="<?=$_SERVER['PHP_SELF']?>?mode=ajout">

    [Ajouter une mail]</a></td>

    </tr>

    <?

    $result=mysql_query("SELECT * FROM ".$nick."_mail ORDER BY id DESC");

    if (mysql_num_rows($result) == 0) {echo "<tr><td class=normal><b>Aucune mail.</b></td></tr>"; }

    else {

    ?>

    <tr bgcolor="#6699ff">

    <td class="menu">Action</td>

    <td class="menu">nom</td>

    <td class="menu">texte</td>

    </tr>

    <?

    while ($ligne = mysql_fetch_array($result)) { ?>

    <tr>

    <td class=normal><a class=normal onClick="java script:return confirm('�es-vous sr de vouloir supprimer le transport?');" title="Supprimer <?=$ligne['id'] ?>" href=<?=$_SERVER['PHP_SELF]?>?mode=suppr&id=<?=$ligne['id'] ?>"><img src=../images/poubelle.gif border=0></a></td>

    <td class=normal><a class=normal title="Modifier cette mail" href="<?=$_SERVER['PHP_SELF']?>?mode=modif&id=<?=$ligne['id'] ?>"><?=$ligne['nom'] ?></a> </td>

    <td class=normal><?=$ligne['texte'] ?> </td>

    </tr>

    <?

    }

    }

    echo "</table>";

    }

    function liste_commande(){

    global $nick;

    $result = mysql_query("SHOW COLUMNS FROM ".$nick."_commandes");

    if (!$result) {

    echo 'Impossible d\'exécuter la requête : ' . mysql_error();

    exit;

    }

    echo "<span class=normal><b>Liste de mots pouvant etre utlisés dans le mail pour ce qui concerne la commande</b> a mettre entre [&nbsp;&nbsp;]</span><br>";

    $i="0";

    if (mysql_num_rows($result) > 0) {

    while ($row = mysql_fetch_assoc($result)) {

    echo "<span class=normal>".$row['Field']."&nbsp;&nbsp;&nbsp;</span>" ;

    $i++;

    if ( $i==8 )

    {

    echo "<br>";

    }

    if ( $i==16 )

    {

    echo "<br>";

    }

    }

    }

    $result = mysql_query("SHOW COLUMNS FROM ".$nick."_utilisateurs");

    if (!$result) {

    echo 'Impossible d\'exécuter la requête : ' . mysql_error();

    exit;

    }

    echo "<br><span class=normal><b>Liste de mots pouvant etre utlisés dans le mail pour ce qui concerne l utilisateur</b> a mettre entre [&nbsp;&nbsp;]</span><br>";

    $i="0";

    if (mysql_num_rows($result) > 0) {

    while ($row = mysql_fetch_assoc($result)) {

    echo "<span class=normal>".$row['Field']."&nbsp;&nbsp;&nbsp;</span>" ;

    $i++;

    if ( $i==8 )

    {

    echo "<br>";

    }

    if ( $i==16 )

    {

    echo "<br>";

    }

    }

    }

    }

    ?>

    bien entendu il faut au préalable faire une petite table avec quelques champs dedans .... id nom texte id est autoincrementé

    ensuite une petite(s) fonction(s) a mettre dans fonctions.php ou dans un fichier de fonctions perso

    function email_vari($quoi,&$message,$id) {

    global $nick, $wwwroot;

    global $nick, $site;

    global $nick, $support;

    $sql=mysql_fetch_array(mysql_query("select id_utilisateur from ".$nick."_commandes where id ='".$id."' "));

    //echo $sql['id_utilisateur'];

    $util=$sql['id_utilisateur'];

    $zz="select email from ".$nick."_utilisateurs where id_utilisateur ='".$util."' ";

    $ql=mysql_fetch_array(mysql_query($zz));

    //echo $ql['email'];

    $email = $ql['email'];

    $sujet= "Information Izzotek sur commande : ".$quoi;

    mail($email,$sujet,$message,"FROM:$support");

    }

    function send_notif ($titre,$id){

    global $nick;

    $res=remplace($titre,$id);

    email_vari($titre,&$res,$id);

    }

    function remplace($titre,$cmd){

    global $nick;

    $text=mysql_fetch_array(mysql_query("select texte from ".$nick."_mail where nom ='$titre'"));

    $texte=$text['texte'];

    //$sql=mysql_fetch_array(mysql_query("select * from ".$nick."_commandes,".$nick."_utilisateurs where id='1586'"));

    $sql=mysql_query("select * from ".$nick."_commandes where id='$cmd'");

    $nblignes=mysql_num_rows($sql);

    $nbchamps=mysql_num_fields($sql);

    $var=array();

    /* affichage de l'en-tete du tableau HTML avec les noms des champs */

    echo "<table border=2 align=center ><tr>";

    for($i=0; $i < $nbchamps; $i++) {

    $tabchamps[$i] = mysql_field_name($sql,$i);

    $zz="[".$tabchamps[$i]."]";

    $val=mysql_fetch_array(mysql_query("select ".$tabchamps[$i]." from ".$nick."_commandes where id ='$cmd'"));

    $var[$zz].=$val[$tabchamps[$i]];

    }

    $tmp_id=mysql_fetch_array($sql);

    $idd=$tmp_id['id_utilisateur'];

    $modele1=strtr($texte,$var);

    $sql=mysql_query("select * from ".$nick."_utilisateurs where id_utilisateur='".$idd."' ");

    $nblignes=mysql_num_rows($sql);

    $nbchamps=mysql_num_fields($sql);

    $var=array();

    /* affichage de l'en-tete du tableau HTML avec les noms des champs */

    echo "<table border=2 align=center ><tr>";

    for($i=0; $i < $nbchamps; $i++) {

    $tabchamps[$i] = mysql_field_name($sql,$i);

    $zz="[".$tabchamps[$i]."]";

    $val=mysql_fetch_array(mysql_query("select ".$tabchamps[$i]." from ".$nick."_utilisateurs where id_utilisateur ='".$idd."' "));

    $var[$zz].=$val[$tabchamps[$i]];

    }

    $modele2=strtr($modele1,$var);

    return stripslashes($modele2);

    }

    j'ai fais ça il y a un bon bout de temps .... donc il faut peut etre revoir un peu le code :huh:

    et finalement dans administrer/commandes.php mettre

    $titre="Ajout article";

    send_notif ($titre,$_REQUEST['cmd_id']);

    dans chacun des case que vous voulez personaliser pour les etapes de la commande .....

    vous avez la liste des champs que vous pouvez utiliser pour la redaction du mail :)

    A vous de jouer et d'adapater :D


  9. je viens de telecharger le code .... je n'ai rien installé , je regarde juste le code

    comme je me suis beaucoup inspiré de la méthode de codage de PEEL pour tout mes sites perso et de taff, je vais faire quelques commentaires pour l'amélioration et la lisibilité du code ( enfin je vais tenter ...)

    le nom des champs dans les tables pourrait porter un préfixe afin de faciliter les jointures et le codage ( peel_catecories:cat_nom,cat_id peel_articles:art_nom,art_image1 etc ...)

    Grace à cela on évite les "select as" car chaque nom de champs devient unique

    les tables sur le statut de la commande et le statut du paiement .... haaaaaaaaaaaaaa ENFIN !! cela permet de modifier les intituler sans flinguer les anciennes commandes , en plus maintenant je vais surement pouvoir donner le code pour les mails qui accompagne les différents status ....

    hé oui un petit mail en texte libre et nom pas un texte dans une des fonctions de PEEL c'est bien pratique , et maintenant que c'est sur un id et nom une valeur de champ ....c'est beaucoup plus sympatique!!

    Tout les modeles dans le meme repertoires ... tres bonne idées

    la class caddie c'est bien étoffé depuis le debut ..... j'en avais rajouté dedans pour mes besoin perso ... mais la je pense qu'il y a tout!!

    L'arrivée de la gestion de la taille et de la couleur exelent

    le pdf ...... beau travail....... je sent que je vais aller voir les sources de ce freeware tres rapidement :D

    positionner les produits ..... perso j'ai mis ça dans le produit en lui meme

    par contre le stock est dans une table à part , car il y a le stock par taile/couleur des produits

    pour l'installation (que je n'ai pas faite) je verrais bien un prefixe pour les tables à la place de PEEL_ .... une variable qui permet de personnaliser sa BDD et aussi de faire cohabiter sur un meme site une base de prod et une base de dev ...ou autre

    tout les css dans lib/css ..... haaaaa cool plus rien dans haut.php !!! que du bonheur :P .... ha non je viens de voir des css dans modeles :)

    templates.php ...... vue qu'il n'y a que des fonctions , pourquoi pas dans le repertoires fonctions ? meme si ce n'est que de l'affichage :huh:

    je vous laisses sur ces quelques reflexions qui n'engage que moi ....bonne fetes à tous ;)

    encore bravo à l'équipe de PEEL

Twitter Advisto ecommerce

Facebook PEEL Shopping