Gestion Des Avis


12 messages dans ce sujet

Posté(e) · Signaler ce message

Bonjour,

 

Je suis sous la version 6.2 et je me posais la question si un client pouvait consulter tous les avis qu'il a pose sur le site. En effet il doit etre identifie pour laisser un commentaire sur un produit, la validation n'est pas automatique mais doit se faire par un administrateur.

 

Y a t'il une maniere d'afficher sur son compte les avis qu'il a depose ? et si oui une piste ?

 

Peut etre en modifiant le module avis et n'affichant que les avis correspondant a cet utilisateur

 

Une idee ?

 

Merci de votre aide

 

Anh

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

wouarf la 6.2 c'est loin tout ça !

 

il faut effectivement récupérer l'id utilisateur de la table avis une fois que celui-ci est identifié et le comparer à l'id de la table utilisateur le tout dans une requête .

 

me souviens plus du noms de tables mais c'est ça.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Une simple requête SQL sur la table peel_avis dans la fonction qui affiche le compte de l'utilisateur (affiche_compte) devrait convenir :

$q = query("SELECT * FROM peel_avis WHERE id_utilisateur = ".intval($_SESSION['session_utilisateur']['id_utilisateur']));
while($result = fetch_assoc($q)) {
    // Affichage
}
 

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Je n'ai pas tres bien compris, sur affiche_compte on a simplement

 

if (!function_exists('affiche_compte')) {
    /**
     * affiche_compte()
     *
     * @param mixed $return_mode
     * @return
     */
    function affiche_compte($return_mode = false)
    {
        $output = '';
        if (est_identifie()) {
            $output .= '
<div style="padding:5px;">
<a href="' . $GLOBALS['wwwroot'] . '/membre.php">' . HELLO . '&nbsp;' . String::html_entity_decode_if_needed($_SESSION['session_utilisateur']['prenom']) . ' ' . String::html_entity_decode_if_needed($_SESSION['session_utilisateur']['nom_famille']) . '</a>
<br /><a href="' . $GLOBALS['wwwroot'] . '/sortie.php">' . DECONNECT . '</a>
<br /><a href="' . $GLOBALS['wwwroot'] . '/compte.php">' . COMPTE . '</a>
<br /><a href="' . $GLOBALS['wwwroot'] . '/achat/historique_commandes.php">' . ORDER_HISTORY . '</a>
<br /><a href="' . $GLOBALS['wwwroot'] . '/connect.php">' . CREDITATION . '&nbsp;' . String::html_entity_decode_if_needed($_SESSION['session_utilisateur']['avoir']) . ' ' . AVOIR . '</a>
</div>';
        } else {
            $output .= '
<form class="entryform" method="post" action="membre.php">
    <table class="module_login" width="100%" border="0" cellpadding="1" cellspacing="0">
        <tr>
            <td>' . EMAIL . '</td>
            <td class="email_module_login" colspan="2"><input type="text" name="email" style="width:120px;" value="' . String::str_form_value(vb($frm['email'])) . '" /></td>
        </tr>
        <tr>
            <td>' . PASSWORD . '</td>
            <td class="email_module_password"><input type="password" name="mot_passe" style="width:120px;" value="' . String::str_form_value(vb($frm['mot_passe'])) . '" /></td>
            <td><p>' . get_form_token_input('membre.php', true) . '<input type="submit" value="" class="bouton_ok" /></p></td>
        </tr>
        <tr>
            <td class="center" style="padding-top:5px;" colspan="3">
                <a href="' . $GLOBALS['wwwroot'] . '/infos/getpass.php">' . nl2br(FORGOT_YOUR_PASSWORD) . '</a><br />
                <a href="' . $GLOBALS['wwwroot'] . '/infos/register.php">' . REGISTER . '</a>
            </td>
        </tr>
    </table>
</form>';
        }
        if ($return_mode) {
            return $output;
        } else {
            echo $output;
        }
    }
}

 

Je ne vois pas tres bien ou placer ce code, de plus le lien de la liste d'avis est sur modules/avis/administrer/avis.php

 

Je suis un peu perdue...

 

Une petite aide s'il vous plait

 

Anh

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Vous pouvez placer la boucle sur le code dans le test

 if (est_identifie()) {

 

 

Je ne vois pas tres bien ou placer ce code, de plus le lien de la liste d'avis est sur modules/avis/administrer/avis.php

 

La requête SQL vous permet d'afficher directement les avis déposés. Il faudra faire une mise en forme avec un peu de HTML.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour Simon, j'ai place le code mais je n'ai pas d'avis qui s'affiche sur mon compte, ai-je oublie quelquechose ?

 

Merci

 

Anh

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

pouvez-vous mettre le code que vous avez ajouté svp ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour

 

Je l'ai place dans print_compte

 

if (!function_exists('print_compte')) {

    function print_compte($return_mode = false)
    {
                   

        if (est_identifie()) {

  $q = query("SELECT * FROM peel_avis WHERE id_utilisateur = ".intval($_SESSION['session_utilisateur']['id_utilisateur']));
while($result = fetch_assoc($q)) {
    // Affichage
}
            $u = get_user_information($_SESSION['session_utilisateur']['id_utilisateur']);
            $output .= (!empty($u['code_client']) ? '<p><h2>' . COMPTE . ' ' . NUMBER . ' ' . $u['code_client'] . '</p>' : '') . '</h2>
<b>' . YOU_ARE . '</b>:&nbsp;' . String::html_entity_decode_if_needed($_SESSION['session_utilisateur']['prenom']) . ' ' . String::html_entity_decode_if_needed($_SESSION['session_utilisateur']['nom_famille']) . '
<br /><b>' . OFFERED_BY . '</b>:&nbsp;' . String::html_entity_decode_if_needed($_SESSION['session_utilisateur']['ville']) . '
<br /><br />

';
    if(is_payback_module_active()) {
        $output .= '
<h2>' . MY_RETURN . '</h2>
- <a class="normal" href="' . $GLOBALS['wwwroot'] . '/payback.php">' . RETURN_HISTORY . '</a><br />
<br />';
    }


    if (est_identifie()) {
    if (a_priv('util') || a_priv('admin')) {
    $output .= '<br /><br />
    <h2>' . MY_ORDER . '</h2><br />
' . ORDER_FOLLOW . '
- <a class="normal" href="' . $GLOBALS['wwwroot'] . '/order.php">' . ORDER_HISTORY . '</a><br />
<br />';
}
}
if (is_module_pensebete_active()) {
    if (est_identifie()) {
    if (a_priv('util') || a_priv('admin')) {
                $output .= '<br />
<h2>' . PENSE_BETE . '</h2>
- <a  href="' . $GLOBALS['wwwroot'] . '/box.php">' . VOIR_PENSE_BETE . '</a><br /><br />';
            }
                }
}
            if (is_parrainage_module_active()) {
                $output .= '<br />
<h3>' . PARRAIN_ENTETE . '</h3>
- <a href="' . $GLOBALS['wwwroot'] . '/modules/parrainage/parrain.php">' . PARRAIN_TEXTE . '</a><br />';
            }
            

            $code_promo_query = query('SELECT code_promo, valeur_code_promo, percent_code_promo
                FROM peel_commandes pc
                WHERE pc.id_utilisateur = "' . intval($_SESSION['session_utilisateur']['id_utilisateur']) . '" AND code_promo != ""');
            if (num_rows($code_promo_query) > 0) {
                $output .= '<p><b>' . MES_CODE_PROMO_UTILISE . '</b></p>';
                while ($cp = fetch_assoc($code_promo_query)) {
                    $output .= '- ' . $cp['code_promo'] . ' ' . get_discount_text($cp['valeur_code_promo'], $cp['percent_code_promo']) . '<br />';
                }
            }

            $current_code_promo_query = query('SELECT *
                FROM peel_utilisateurs_codes_promos ucp
                INNER JOIN peel_codes_promos cp ON cp.id = ucp.id_code_promo AND cp.etat = "1" AND ("' . date('Y-m-d', time()) . '" BETWEEN cp.date_debut AND cp.date_fin)
                WHERE ucp.id_utilisateur = "' . intval($_SESSION['session_utilisateur']['id_utilisateur']) . '" AND ucp.utilise = 0');
            if (num_rows($current_code_promo_query) > 0) {
                $output .= '<p><b>' . MES_CODE_PROMO_VALIDE . '</b></p>';
                while ($cp = fetch_assoc($current_code_promo_query)) {
                    $output .= '- ' . $cp['nom_code'] . ' ' . get_discount_text($cp['remise_valeur'], $cp['remise_percent']) . ' ' . CODE_PROMO_VALID_FROM . ' ' . date($GLOBALS['date_basic_format_short'], strtotime($cp['date_debut'])) . ' ' . FLASH_TO . ' ' . date($GLOBALS['date_basic_format_short'], strtotime($cp['date_fin'])) . '<br />';
                }
            }

            $output .= ($u['remise_percent'] > 0) ? '<br />- ' . REMISE . BEFORE_TWO_POINTS . ': ' . $u['remise_percent'] . ' %<br />' : '';
                if (est_identifie()) {
    if (a_priv('reve') || a_priv('admin')) {
            $output .= $u['code_banque']  ? '<br /><h2>' . GAINS . BEFORE_TWO_POINTS . '</h2><h1>' . fprix($u['code_banque'] , true). '</h1><br /><br />' : '';
            $output .= $u['description'] ? '<h2>' . ASSOIN . BEFORE_TWO_POINTS . '</h2><br /> ' . $u['description'] . '<br />' : '';
            if (is_affiliate_module_active()) {
            }
            }
                
            $output .= '
<h2>' . CHANGE_PARAMS . '</h2>
- <a href="' . $GLOBALS['wwwroot'] . '/password.php">' . CHANGE_PASSWORD . '</a><br />
- <a href="' . $GLOBALS['wwwroot'] . '/address.php">' . CHANGE_PARAMS . '</a><br />';
            if (is_module_blog_active()) {
                $output .= get_mon_compte_blog();
            }
                if (a_priv('affi')) {
                    $output .= '<br />
<h3>' . AFFILIATE_ACCOUNT . '</h3>
' . AFFILIATE_ACCOUNT_MSG . '<br />
<br />
' . AFFILIATE_ACCOUNT_URL . ' <b>' . $GLOBALS['wwwroot'] . '/?ide= . $_SESSION['session_utilisateur]['id_utilisateur'] . '</b><br />
<br />
- <a class="normal" href="' . $GLOBALS['wwwroot'] . '/modules/affiliation/affiliation_produits_liste.php">' . AFFILIATE_ACCOUNT_PROD . '</a><br />
- <a class="normal" href="' . $GLOBALS['wwwroot'] . '/modules/affiliation/affiliation_produits_liste.php?mode=generehtmlstd">' . AFFILIATE_ACCOUNT_BAN . '</a><br />
- <a class="normal" href="' . $GLOBALS['wwwroot'] . '/modules/affiliation/affiliation_rapport_ventes.php">' . AFFILIATE_ACCOUNT_SELL . '</a><br />';
                }
            }
            $output .= '
<br /><p>' . MSG_SUPPORT . '</p>
- <a href="' . $GLOBALS['wwwroot'] . '/sortie.php">' . LOGOUT . '</a><br />';
            if (a_priv('admin')) {
                $output .= '
<br /><br />
- <a href="' . $GLOBALS['administrer_url'] . '/index.php">' . ADMIN . '</a><br /><br />';
            }
        } else {
            $output .= '
- <a href="' . $GLOBALS['wwwroot'] . '/sign-in.php">' . LOGIN . '</a><br />
- <a href="' . $GLOBALS['wwwroot'] . '/infos/register.php">' . REGISTER . '</a><br />';
        }
        $output .= '
';
        if ($return_mode) {
            return $output;
        } else {
            echo $output;
        }
    }
}

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,


Le code que j'avais donné était volontairement incomplet :
while($result = fetch_assoc($q)) {
    // Affichage
}
De façon sous-entendu, il fallait remplacer le commentaire  // Affichage par le code permettant de récupérer les informations de la requête, et de l'afficher. Par exemple :
  $output .= $result['avis'] . "<br/>";
=> Ceci ne donne seulement un avis déposé. Vous pouvez ajouter d'autres informations comme le nom du produit ou la date. La liste des informations disponible correspond aux champs de la table peel_avis. Je vous laisse compléter et mettre en forme de la façon qu'il vous plait.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Je suis sous la version 6.2 et je viens d'ajouter 2 champs pour les avis, creation dans la base de donnee, tout va bien.

 

Ajout dans le formulaire, test en ligne ca fonctionne sauf qu'en consultant les avis je m'apercois que mes champs sont decales au niveau de la base de donnees desormais

ce que je rentre dans les champs que je viens de creer decalent le champ note et le champ avis ainsi j'ai dans mes 2 nouveaux champs les infos de note et celle d'avis et dans les champs note et avis mes 2 nouveaux champs.

 

Exemple a partir du formulaire

champ note : 5

champ avis : bonjour

champ note2 : 1.15

champ note 3 : 5.50

 

J'obtiens dans la base de donnees

champ note : 1

champ avis : 5.50

champ note2 : 5

champ note3 : bonjour

 

J'ai sans doute fait une erreur quelquepart pourtant je n'ai touche que la fonction du module avis.

 

Qu'en pensez-vous est-ce que ca vient de mon choix d'avoit mis des float pour les champs note 2 et 3?

 

Merci de votre soutien

 

Anh

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Les noms des champs que vous avez ajouté doivent être inversé au niveau de la requête SQL qui insére les avis. Vous devez vérifier que la valeur en POST est insérée dans le bon champ dans la base de donnée. Le type de la valeur (float) n'explique pas le problème

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Merci effectivement j'ai modifie $sql = "INSERT INTO peel_avis (...

en mettant les nouveaux champs avant avis et note et ca fonctionne, je ne pensais pas que cela pouvait impacter sur la base de donnee.

 

Merci de ce conseil

 

Anh

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping