Flux d’activité

Flux d’activité de Messages

  1. crisplouf


    voilà donc les codes :

    Dans template.php >> morceau de code que j'ai inserer en plus :

    											<!-- MA FONCTION POUR RESULTAT D'UNE RECHERCHE -->
    <?
    function template_index_produit_search(
    $id,
    $nom,
    $descriptif,
    $image1,
    $prix)

    {

    global $wwwroot;
    global $dirroot;
    global $repertoire_images ;
    global $repertoire_upload ;
    $sqlProd = "
    SELECT p.id
    , p.nom_".$_SESSION['langue']."
    , p.descriptif_".$_SESSION['langue']."
    , p.image1
    , p.prix
    FROM peel_produits p
    WHERE p.etat = '1' AND p.id = '".intval($id)."' ORDER BY RAND() ";

    $resProd = mysql_query($sqlProd);

    $prod = mysql_fetch_array($resProd);

    $resCat = mysql_query("SELECT categorie_id FROM peel_produits_categories WHERE produit_id = '".intval($prod['id'])."'") ;

    $Cat = mysql_fetch_object($resCat);

    echo "<table cellpadding=\"0\" cellspacing=\"0\" width=\"228\" height=\"150\"style=\"background:#ffffff;border:1px solid #2973B6;\"><tr><td colspan=\"2\" valign=\"top\">";

    echo "<tr><td valign=\"top\">";
    if (empty($prod['on_check'])) {

    href_link($prod['id'], vn($Cat->categorie_id), $class="");

    }
    if (!empty($image1)) {

    $width = calcul_largeur_image($repertoire_upload."/".$image1);

    $largeur = ($width >= 150) ? "80" : $width;

    echo "<img src=\"$repertoire_upload/".$image1."\" width=\"$largeur\" border=\"0\" alt=\"".$nom."\"/>";

    } else {

    echo "<img src=\"$wwwroot/images/photo-non-disponible.gif\" width=\"80\" alt=\"photo non disponible\" border=\"0\">";

    }

    echo (empty($on_check)) ? "</a>" : "";
    echo "</td><td valign=\"top\" style=\"padding-left:25px;\">";
    echo "<h3>".$nom."</h3><br />";
    affiche_prix_catalogue($id);
    if (empty($on_check)) {

    echo "";
    } else {

    affiche_check($id);

    }
    echo "</td></tr>";
    echo "<tr><td colspan=\"2\" style=\"padding-left:10px;padding-bottom:10px;\" >";
    echo (!empty($image2)) ? "<a href=\"".$repertoire_upload."/".$image2."\" rel=\"lightbox\" /><img src=\"".IMG_ZOOM."\"></a>" : "" ;


    if (empty($on_check)) {

    href_link($prod['id'], vn($Cat->categorie_id), $class="");

    echo "<img src=\"".IMG_MORE."\"></a></span>";

    }

    echo "</td></tr></table>";

    if (est_identifie()) {

    if (a_priv("admin")) {

    echo "<p><a href=\"administrer/produits.php?mode=modif&id=".$id."\" class=\"label\">MODIFIER LE PRODUIT</a></p>";

    }

    }

    }
    ?>[/codebox]

    Mon fichier : search.php :

    [codebox]<?php
    include("configuration.inc.php");

    $DOC_TITLE = "[PEEL.FR]";
    define("IN_SEARCH", TRUE);
    include("$repertoire_modele/haut.php");

    /////////////////////////////////////////////////////////////////
    // build the search terms array
    // this will build the array to pass to build_sql()

    $match = vb($_GET['match']);

    $search = vb($_GET['search']);

    $fields[] = "p.nom_".$_SESSION['langue']."";

    $fields[] = "p.descriptif_".$_SESSION['langue']."";

    $fields[] = "p.image1";

    if (empty($search)){

    $search="";
    $searchtext="";

    } else {

    $search=trim(stripslashes($search));

    $searchtext = htmlspecialchars($search);

    $terms = build_search_terms($search, $match);

    if(count($terms)>0){


    $SQL = build_sql("peel_produits", $terms, $fields, $match);

    $RESULT = mysql_query($SQL) or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());;

    if ($RESULT) {

    if (mysql_num_rows($RESULT) == 0) {

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

    } else {

    echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"1\" width=\"100%\">";

    $nb_cellules = mysql_num_rows($RESULT);

    $nb_colonnes = 2;

    $j = 0;



    while($prod=mysql_fetch_array($RESULT))
    {

    if ( $j % $nb_colonnes == 0 ) {

    echo "<tr>";

    }

    if($j % $nb_colonnes !=0 OR $j % $nb_colonnes == 0 ) {

    // on affiche une cellule
    if ( $j % $nb_colonnes == 0 OR $j == $nb_cellules ) { echo "<td class=\"produit2col bordure\">"; } else { echo "<td class=\"produit2col\">"; }

    template_index_produit_search(
    intval($prod['id']),
    html_entity_decode($prod['nom_'.$_SESSION['langue'].'']),
    html_entity_decode($prod['descriptif_'.$_SESSION['langue'].'']),
    $prod['image1'],
    $prod['prix']
    );

    }

    echo "</td>";

    $j++;

    if ( $j % $nb_colonnes == 0 OR $j == $nb_cellules ) {

    echo "</tr>";

    }

    }



    echo "<tr><td align=\"center\" class=\"normal\" colspan=\"2\">";

    echo "</td></tr></table>";

    }


    }

    }

    }

    ?>

    <?php

    include("$repertoire_modele/bas.php");

    /* FONCTIONS */

    function build_search_terms($search, $match)
    {

    $terms=array();
    $quote_terms=array();
    /* Si c'est une phrase exacte */

    if($match==3){

    $terms[] = $search;

    }
    /* Si ce n'est pas une phrase exacte, on d&eacute;coupe la chaine */
    else {



    if ( strstr( $search, '"' ) ){

    //first pull out all the double quoted strings (e.g. '"iMac DV" or -"iMac DV"')
    preg_match_all( '/-*".*?"/', $search, $match );
    $search = preg_replace( '/-*".*?"/', '', $search );
    $quote_terms = preg_replace( '/"/', '', $match[0] );
    }

    //finally pull out the rest words in the string
    $terms = preg_split( "/\s+/", $search, 0, PREG_SPLIT_NO_EMPTY );



    }

    $test = array_merge( $terms, $quote_terms);

    //merge them all together and return
    return array_merge( $terms, $quote_terms);


    }

    /////////////////////////////////////////////////////////////////
    // build the sql statement's where clause
    // this will build the sql based on the given information

    function build_terms_clause($terms, $fields, $match)
    {

    static $where_clause;

    if(empty($where_clause)){

    while (list ($junk, $term) = each ($terms)) {

    if(substr($term, 0, 1)=="-"){

    $notmod="NOT ";

    $term=substr($term, 1);

    } else {

    $notmod="";

    }

    reset($fields);

    unset($likeArray);

    while (list ($key, $val) = each ($fields)) {

    $term=htmlspecialchars($term, ENT_QUOTES);

    sql_tagcloud($term);

    $likeArray[]=" $val $notmod "."LIKE '%$term%' ";


    }

    $termArray[] = " (".implode( $likeArray, " OR " ).") ";

    }

    $cmptype="AND";


    if($match!=1) $cmptype="OR";

    $where_clause.= " (".implode( $termArray, " $cmptype " ).") ";

    $where_clause.="order by rand()";

    }

    return $where_clause;

    }

    /////////////////////////////////////////////////////////////////
    // build the sql statement
    // this will build the sql based on the given information

    function build_sql($table_name, $terms, $fields, $match)
    {

    $SQL = "SELECT DISTINCT(p.id), c.id AS categorie_id, p.nom_".$_SESSION['langue'].", p.descriptif_".$_SESSION['langue']."
    , p.image1, p.prix, c.nom_".$_SESSION['langue']." AS categorie
    FROM peel_produits p, peel_produits_categories pc, peel_categories c, peel_sites_pivots sp
    WHERE sp.produit_id = p.id AND sp.site_id = '".intval($_SESSION['ecom']['id'])."' AND p.id = pc.produit_id AND pc.categorie_id = c.id AND p.etat = '1' AND";

    $SQL.= build_terms_clause($terms, $fields, $match);

    return $SQL;
    }

    ?>

    Si vous voulez sur votre site le module de recherche Ajax , inserez le code suivant dans votre fichier : haut.php ou bas.php,

    suivant l'endroit que vous souhaitez qu'il apparaisse :

    code : <?php affiche_menu_recherche()?>

    *********************

    Je suis loin d'être un pro du développement, il y a peut être des lignes qui sont inutiles, dans ces codes , je ne déchiffre pas encore tout lol.

    En tout cas, tel quel , tout fonctionne bien sur mon site , vous pouvez allez voir si vous le souhaitez : http://mister-hightech.com ( Attention, le site est encore en test ! pas d'achat SVP )

    J'espere que ce post pourra aider plusieurs personnes ! bye @+

    PS: ( si qq améliore ce code, ( il n'aura pas de mal ) lol , ce serait sympa de m'informer ...

  2. crisplouf


    Bonjour,

    J'ai cherché sur le forum mais en vein une question qui porter sur le nom "PEEL PREMUIM 3.0" que l'on trouve dans les onglets de IE. Je voudrais savoir ou je pourrais enlevé car je voudrais pour mettre le nom de mon site à la place?

    Merci

    je crois que j'ai vu un post y a un ptit moment,

    regarde pe etre dans ton fichier : fonctions.php une variable du nom : $site

    pas sur mais essayes tjrs .

  3. crisplouf


    çà y est , Enfin, j'ai bien réussit à afficher tous les résultats comme je le souhaitais ! Cool , suis trop fier lol... merci pour ton aide Paulanna !

    Je voudrais faire une petite amélioration, pour limiter le résultat à 8 produits par page, j'ai récupéré la variable ds template :

    $LINKS => new multipage (); mais je sais pas ni où ni comment l'insérer ds mon code ,

    + , impossible de récupérer l'image2 du produit , donc , pas de bouton " zoom " dans le résultat de la recherche ...

    je doit partir un instant, qd je reviens, je posterais les codes que j'ai fais , si qqn pourrait m'aider à résoudre ces 2 points ... çà serait sympa . Merci.

  4. nico280880


    Bonjour, je viens de récupérer un site e-commerce Peel que je ne connaissais pas jusqu'à présent.

    Je ne sais pas s'il s'agit d'une version gratuite ou payante (d'ailleurs si quelqu'un peut m'aider à distinguer les deux versions...)

    Mon problème est le suivant : afin de continuer cette boutique dédiée à la papeterie, je dois créer une multitude de sous catégories. Cependant, je ne dois pas les afficher dans le menu de gauche mais dans une page intermédiaire.

    Ayant eut l'habitude des sites avec template, je ne retrouve pas les correspondances et je n'arrive pas à modifier ce menu et à créer la page intermédiaire !!!

    Quelqu'un pourrait-il m'aider ou simplement me mettre sur la bonne voie ?

    Merci d'avance

  5. phil83


    Bonjour, peut on metre les Banieres publicitaires en flash ?

    j'ai fait une recherche et je me suis servie de l'exemple de ce post:

    http://forum.peel.fr/index.php?showtopic=1033

    dans le back office "Gérer les bannières publicitaires"

    je n'arrive pas a lui faire accepté les ".swf"

    extrait du code " configuration.inc.php" :

    $libdir				  = $dirroot."/lib";
    
    $liste_mots				= $dirroot."/liste_mots.txt";
    
    $my_max_file_size	   = "204800"; # in bytes
    
    $image_max_width		= "1024";
    
    $image_max_height	   = "1024";
    
    $the_path			   = $dirroot."/upload/";
    
    
    $registered_types = array(
    
    										"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",
    
    										"application/comma-separated-values"	=> ".csv",
    
    										"image/swf"							 => ".swf",
    
    										); 
    
    
    $allowed_types = array("image/gif", "image/pjpeg", "image/jpeg", "image/x-png", "image/png", "text/comma-separated-values", "text/plain", "application/comma-separated-values", "image/swf");

    j'ai comme message ceci :

    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)

    .csv (application/comma-separated-values)

    .swf (image/swf)

    :) merci

  6. crisplouf


    Effectivement, Paulanna, avec les connaissances dont je dispose à ce jour, j'aurais pas pu faire cette ligne de code lol !

    Merci en tout cas, çà fonctionne super, .

    Reste plus qu'à me mettre au boulot , pour que les résultats soient affichés comme s'ils étaient dans une catégorie ...Aie Aie

    :)

    Encore merci, çà me fait un gros poig en moins ... je vais maintenant étudier mon fichier template.php, pour voir comment je pourrais coder la partie : if (mysql_num_rows($RESULT) > 0)

    en affichant le résultat comme l'affichage des produits dans les catégories.

    Bye Paulanna ,

    PS : heureux de voir , kil n'y a pas que des égoïstes ds les forums !

  7. crisplouf


    heu oui oups en effet j'ai oublié le chemin de l'image fais donc :

    echo "<img  src=\"$repertoire_upload/".$image."\" />";

    ps: ton fichier recherche.html existe bien

    je crois qu'en fait, c'est pas un fichier, ( en lui même ), comme M.Bagur m'a fait la ré écriture d'url , çà doit être le nom ré écrit de : "search.php" , ( si encore, je comprends qu'est ce que la réécriture d'url ...lol)

    Promis, je l'ai cherché vraiment partout, ( tous les fichiers du serveur sont sauvgardés sur une partition de mon HDD , j'ai fais une recherche sur tous mes disques, RAS.

    Je dois aller manger, ma femme me crie lol .... Bon apétit à tt le monde .

    Merci encore Paulanna, je test après . Bonne soirée si on se "voit" pas !

  8. crisplouf


    Merci Paulanna , mais ..... :

    j'avais réussis cà déjà , regardes stp :

    $fields[] = "p.image1";

    $image = "".$prod['image1']."";

    Mais c'est çà que je savais pas faire >> echo "".stripslashes($image)."\n"; ( c'est çà qui est donc censer afficher l'image ? )

    çà fonctionne pas .... :)

    tu peux vérifier : http://mister-hightech.com et vers le haut, clic donc sur rechercher et mot clé " écran " si tu as le tps .

  9. paulanna


    tu as <form method="get" action="<?php echo $wwwroot ?>/rechercher.html" id="recherche" name="searchform">

    regarde si tu as un fichier rechercher.html à la racine de ton site sinon c'est :

    <form method="get" action="<?php echo $wwwroot ?>/search.php" id="recherche" name="searchform">

    peut être que le code a été modifié

    ce bout de code permet de faire une recherche avec ajax

  10. crisplouf


    le menu recherche de droite est la fonction => affiche_menu_recherche dans bas.php

    tu trouveras cette dernière dans templates.php

    merci pour ton "appréciation"

    Voilà le code ds template.php :

    <h2><label for="search"><?php echo SEARCH ?></label></h2>
    <p>

    <form method="get" action="<?php echo $wwwroot ?>/rechercher.html" id="recherche" name="searchform">
    <input type="hidden" name="mode" value="1">
    <input type="hidden" name="match" value="1">
    <input type="text" name="search" id="foo" value="" onkeyup="loadData();" style="width:150px;"/>
    <input type="submit" value="<?php echo OK ?>" name="action" />
    </form>
    </p>

    <p><div id="placement_produit"></div></p>[/codebox]

    Je ne peux pas afficher les images des produits a partir de ce code ... non ?

    C'est bien search.php qui gère le résultat ainsi que son affichage ?

  11. crisplouf


    je me suis permis de visiter ton site, c'est ma jolie femme qui va être contente ! lol

    Très beau site !

    j'ai regarder ton mode de recherche, j'aurais souhaité un style égal , simple, et avec l'affichage des résultats qui correspond au "Template" de ton site .

    J'ai supprimé :

    le champ des " $match ", pour ne pas choisir : " tous les mots, phrase exacte , etc ..

    les aides qui s'affichent qd on est sur la page de recherche ( chien ET chat ...etc... ) ,

    J'ai essayé de rajouter une variable $img = $prod ['image1']

    mais après je sais plus trop, à cause des liaisons de table ....comment afficher les images des produits qui contiennent le mot recherché ...

    Comprend plus trp ( j'ai trouvé qq tuto à ce sujet mais bon... )

    çà va rentrer lol .

  12. crisplouf


    C'est bien pratique, j'ai lu un post à ce sujet ds les archives, en ayant rechercher justement le mot " recherche " ou "search.php" ds le forum .

    Mais , comme je te disais, je n'ai auncun moyen d'activer ce module Ajax de recherche , du moins, je crois pas l'avoir

    je t'ai envoyé mon fichier search.php en mail.

    Merc bcp !

  13. crisplouf


    tu parles bien de la page search.php ou bien du moteur de recherche en ajax avec le bouton ok ?

    Bonjour, Paulanna

    Oui ma demande concerne bien le fichier seach.php, je suis sur que c'est pas tres difficile, mais suis pas encore assez doué lol

    je te mettrais bien mes modifs en codebox ici, mes cà doit être trp drôle à voir ..! pour les connaisseurs .

    Par contre , je ne savais pas, kil y a vait un autre module de recherche en Ajax avec bouton ok ....

    A koi sert t'il ? j'ai vu aucun renseignement ds ma V5 à ce sujet .

    Merci Paulanna

Twitter Advisto ecommerce

Facebook PEEL Shopping