Posted 7 Jul 2007 · Report post Un problème existe sur les versions de PEEL SHOPPING au niveau de /administrer/produits lorsqu'on clic sur les pages en pagination je vous invite à remplacer la fonction affiche_liste_produits par la fonction suivante dans la page /administrer/produits.php Cela dot corriger le problème function affiche_liste_produits($start, $frm) { global $wwwroot; global $categorie_options; ?> <table border="0" cellpadding="0" cellspacing="2" width="740"> <tr> <td class="normal" colspan="7"> <form method="get" action="<?php echo $_SERVER['PHP_SELF']?>?start=0&mode=recherche"> <table border="0" cellpadding="0" cellspacing="2" width="740"> <tr><td colspan="2" class="entete">Choisir vos critères de recherche</td></tr> <tr> <td class="normal"><b>Etat du produit :</b> <br /> <select size="1" name="etat" class="formulaire1"> <option value="NULL">Peu importe</option> <option value="1">En ligne</option> <option value="0">En attente</option> </select> </span> </td> <td class="normal"><b>Catégories</b><br /> <select size="1" name="categorie" class="formulaire1"> <option value="NULL">Toutes les catégories</option> <?php if (!isset($categorie_id)) { $categorie_id = 0; } $frm['categories'] = array($categorie_id); construit_select_cat($categorie_options, $frm['categorie_id']); echo $categorie_options; ?> </select> </td> </tr> <tr> <td class="normal" valign="top"> <b>Le produit est-il en page d'accueil ?</b><br /> <select size="1" name="homepage" class="formulaire1"> <option value="NULL">Peu importe</option> <option value="1">Oui</option> <option value="0">Non</option> </select> </td> </tr> <tr> <td class="normal" valign="top"><b>Référence du produit :</b> <input type="text" name="reference" size="15" class="formulaire1" value="" /> </td> </tr> <tr><td colspan="2" height="5" class="label"><img src="<?php echo $wwwroot?>/images/blank.gif" height="5" alt="" /></td></tr> <tr> <td align="center" colspan="2"><input class="bouton" type="submit" value="Rechercher" class="formulaire1" name="action" /> </td> </tr> </table> </form> </td></tr> <tr> <td class="entete" colspan="7">Liste des produits</td> </tr> <tr> <td colspan="7"> <a class="normal" href="<?php echo $_SERVER['PHP_SELF']?>?mode=ajout">[Ajouter un produit]</a> </td> </tr> <?php $nb = 5; $where = ""; if (isset($frm['etat'])) {if ($frm['etat'] != "NULL") {$where .= " AND p.etat = '".$frm['etat']."'";}} if (isset($frm['reference'])) {if (!empty($frm['reference'])) {$where .= " AND p.reference LIKE '%" .addslashes($_GET['reference']). "%'";}} if (isset($frm['nbparpage'])) {if (!empty($frm['nbparpage'])) {$nb = $frm['nbparpage'];}}//nombre d'enregistrement par page if (isset($frm['homepage'])) {if ($frm['homepage'] != "NULL") {$where .= " AND p.on_special = '".$frm['homepage']."'";}} if (isset($frm['categorie']) && !empty($frm['categorie'])) { if ($frm['categorie'] != "NULL") {$where .= " AND c.id = '".$frm['categorie']."'";} //requete du forumaire $sql = "SELECT p.id, p.reference, p.nom, p.description, p.prix, p.etat, p.date_maj, p.on_stock, p.stock FROM peel_produits p, peel_produits_categories pc, peel_categories c WHERE p.id = pc.produit_id AND c.id = pc.categorie_id AND 1 ".$where." ORDER BY p.id ASC LIMIT $start, $nb"; $sql_count = "SELECT COUNT(*) FROM peel_produits p, peel_produits_categories pc, peel_categories c WHERE p.id = pc.produit_id AND c.id = pc.categorie_id AND 1 ".$where." ORDER BY p.id ASC"; //requete d'affichage de la liste } else { $sql = "SELECT p.id, p.reference, p.nom, p.description, p.prix, p.date_maj, p.etat, p.on_stock, p.stock FROM peel_produits p ORDER BY p.id DESC LIMIT $start, $nb"; $sql_count = "SELECT COUNT(*) FROM peel_produits p ORDER BY p.id DESC"; } $result=mysql_query($sql) or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR()); if (mysql_num_rows($result) == 0) { echo "<tr><td class=\"normal\"><b>Aucun produit enregistré dans la base.</b></td></tr>"; } else { ?> <tr bgcolor="#6699ff"> <td class="menu">Action</td> <td class="menu">Catégorie</td> <td class="menu">Nom</td> <td class="menu">Prix € T.T.C</td> <td class="menu">Etat</td> <td class="menu">Stock</td> <td class="menu" align="center">Création / Mise à jour</td> </tr> <?php $i = 0; while ($ligne = mysql_fetch_array($result)) { ?> <tr bgcolor="<?php echo ($i % 2 == 0 ? '#F4F4F4' : '#ffffff' );?>"> <td class="normal" align="center"> <a onClick="java script:return confirm('Êtes-vous sûr de vouloir supprimer le produit <?php echo addslashes($ligne['nom']) ?> ?');" class="normal" title="Supprimer <?php echo $ligne['nom'] ?>" href="<?php echo $_SERVER['PHP_SELF']?>?mode=suppr&id=<?php echo $ligne['id'] ?>"> <img src=<?php echo $wwwroot?>/images/poubelle.gif border=0></a></td> <td class="normal" align="center"> <?php $sqlCAT = "SELECT id, nom FROM peel_categories c, peel_produits_categories pc WHERE pc.produit_id = ".$ligne['id']." AND c.id = pc.categorie_id"; $resCAT = mysql_query($sqlCAT); if (mysql_num_rows($resCAT) > 0) { while ($cat = mysql_fetch_array($resCAT)) { echo html_entity_decode($cat['nom'])."<br />"; } } else { echo "<font color=\"red\"><b>n.c</b></font>"; } ?> </td> <td class="normal" align="center"><a class="normal" title="Modifier ce produit" href="<?php echo $_SERVER['PHP_SELF']?>?mode=modif&id=<?php echo $ligne['id'] ?>"><?php echo stripslashes($ligne['nom'])?></a></td> <td class="normal" align="center"><?php echo $ligne['prix'] ?> € T.T.C</td> <td align="center" class="normal"><?php if (empty($ligne['etat'])) {echo "<img src=\"".$wwwroot."/administrer/images/puce-blanche.gif\" alt=\"\" />";} else {echo "<img src=\"".$wwwroot."/administrer/images/puce-verte.gif\" alt=\"\" />";} ?></td> <td align="center" class="label"><?php if (empty($ligne['on_stock'])) { echo "n.a"; } else { echo ($ligne['stock'] <= 0) ? "<font color=\"red\">".$ligne['stock']."</font>" : $ligne['stock'];} ?></td> <td class="normal" align="center"><?php echo date("d-m-Y", strtotime($ligne['date_maj'])) ?></td> </tr> <tr><td align="center" class="normal" colspan="7"> <?php $i++; } } //Boutons précédent et suivant if($start) { print("<a class=\"normal\" href=\"".$_SERVER['PHP_SELF']."?start=".($start-$nb)."&categorie=".vb($frm['categorie'])."&etat=".vb($frm['etat'])."&homepage=".vb($frm['homepage'])."& reference=".$_GET['reference']."\">page précédent</a>");} $result=mysql_query($sql_count); $row=mysql_fetch_row($result); if($row[0]>($start+$nb)) { if($start) {print(" / ");} print("<a class=\"normal\" href=\"".$_SERVER['PHP_SELF']."?start=".($start+$nb)."&categorie=".vb($frm['categorie'])."&etat=".vb($frm['etat'])."&homepage=".vb($frm['homepage'])."& reference=".$_GET['reference']."\">page suivante</a>"); } print("<br />"); //Affichage des pages if($row[0]>$nb) // le nombre d'enreg. est > au nb de lignes d'affichage ? for($index=0;($index*$nb)<$row[0];$index++) // oui alors on affiche les numéros de pages { ?> <a class="normal" href="<?php echo $_SERVER['PHP_SELF']."?start=".$index*$nb; ?>&categorie=<?php echo vb($frm['categorie'])?>&etat=<?php echo vb($frm['etat'])?>&homepage=<?php echo vb($frm['homepage'])?>&reference=<?php echo $_GET['reference']?>"><?php echo $index+1; ?></a> <?php } echo "</td></tr></table>"; } function valide_form_produit(&$frm, &$erreurs) { $erreurs = array(); $msg = array(); if (empty($frm['nom'])) { $erreurs['nom'] = true; $msg['nom'] = " Vous devez insérer un nom de produit."; } return $msg; } Share this post : post Share on other sites
Posted 8 Jul 2007 · Report post Bonjour, est ce que le pb est présent aussi sur la shopping 2.9.3 ?? car je n'ai pas souvenir ? Merci encore et à bientôt... Share this post : post Share on other sites
Posted 12 Jul 2007 · Report post Bonjour, Ayant remarqué que le petit moteur de rechercher figurant sur la page produit.php ne marchait pas, j'ai essayé d'appliquer le correctif cité. Seulement maintenant j'arrive à cette erreur (ou plutôt ce screen, car aucune erreur n'est signalée), la suite de la page ne s'affiche pas : Je n'arrive pas à cerner l'erreur... Je précise que je tourne sur peel 2.9.3 et que je n'ai aps ajouté la fonction de stock, donc j'ai supprimé toutes les données s'y rapportant. Voilà, si quelqu'un peut m'aider ... Ah et comme je voulais que le moteur de recherche cherche par nom et non pas par référence, j'ai changé la ligne correspondante aussi. Merci d'avance ;) EDIT ! Désolé, je n'avais pas fait gaffe, il manquait la fonction "construit_select_cat" à ajouter dans mon fichier fonction.php.... La page s'affiche correctement maintenant, mais le formulaire de recherche de produit ne marche toujours pas chez moi ;) Share this post : post Share on other sites
Posted 4 Sep 2007 · Report post bonjour je ne comprend pas qu il y faut modifier pouvez vous faire, une explication plus claire, Merci ! exemple : ouvrir /administrer/produits.php chercher ...... et remplacer par ajouter après ajouter avant Merci je ne sais pas ou mettre le script etc.. Share this post : post Share on other sites
Posted 22 Dec 2007 · Report post J'avais cherché mais pas trouvé. Seulement que le pb semblait se situer ligne 403 Merci . Je vais essayer le correctif Share this post : post Share on other sites
Posted 17 Jun 2009 · Report post Bonjour, Ipossible d'ajouter une catégorie dans ma boutique. Le formulaire s'affiche mais pas de bouton de validation une fois les infos enregistrée car il n'y a qu'un bouton "ajouter une sous catégorie" ce qui me semble étrange. Du coup je ne peux pas ajouter de catégorie. J'ai bien modifier le fichier produits.php mais rien n'y fait. Pouvez-vous me renseigner à ce sujet car je ne trouve aucune réponse sur le forum ? Merci Share this post : post Share on other sites