Jump to content

[RESOLU] ajouter un texte pour tous les titres des articles avec une requette sql??


Recommended Posts

Bonjour,
Je ne suis pas tres doué avec le language.
J'aurais besoin d'un petit coup de pouce.
il faudrait directement rentré une requete sur phpmyadmin
ou en php .

dans la table ps_product_lang il y a les champs 'id_product' 'id_lang' et 'name'
dans la table ps_category_product il y a les champs ''id_product' et 'id_category'

mon but serait de pouvoir modifier le champ 'name' seulement quand le champ 'id_lang' contient 2 par exemple
et pour le champ 'id category' choisi.
je veux juste modifier le champ name tout en conservant le texte qu'il contient deja

Si quelqun est assez courageux pour le faire.
merci d'avance.

Share this post


Link to post
Share on other sites

Pas de souci, enfin je vais essayé d'etre plus clair, et essayé d'expliquer differement.

mode simple:

Je voudrais pouvoir modifier le titre de chaque article en fonction d'une categorie,
Par exemple pour mon site : categorie 'etole' ->nom de l'articles 'etole rouge' le transformer en 'etole rouge, accessoires mariage'
et ce pour chaque article de la categorie 'etole'
en fait rajouter au titre de chaque article d'une categorie un texte choisi.

dans le 1er post je donnais les elements de la BDD a utilisés
Cela peut etre fait en modifiant le numero de la categorie manuelement ainsi que la langue

J'espere avoir été un peu plus clair.
En tout cas merci.

Share this post


Link to post
Share on other sites

Alors, c'est pas très clair mais voici comment on peut le traduire en SQL :

UPDATE ps_product_lang tb INNER JOIN ps_category_product tbl 
ON (tb.id_product=tbl.id_product) SET tb.name=CONCAT(tb.name, "texte à ajouter") 
WHERE tbl.id_category=id_category_a_modifier AND tb.id_lang=2



Attention, dans cette requête tu dois modifier "texte à ajouter" par le texte que tu veux ajouter à tes désignations et id_category_a_modifier par l'id de la catégorie que tu veux modifier.
Cette requête modifie seulement quand id_lang=2, tu peux l'enlever pour modifier toutes les langues ou le modifier par en id_lang=1 si tu veux modifier les noms de la langue 1.
Si tu veux ajouter du texte devant le nom du produit remplace

CONCAT(tb.name, "texte à ajouter") 



par

CONCAT("texte à ajouter", tb.name) 



J'insiste aussi sur un point bien particulier, la modification est irréversible, donc il faut faire un backup avant toute modification, je déconseille aussi le lancement de la requête sur un site en production...

Share this post


Link to post
Share on other sites

HA franchement je te remercie, excellent !! Meme si tu as eu du mal a me comprendre.

C'est exactement ce que je voulais, et meme en regardant les fonctions sql sur Google , j'en etais bien loin.
Et ca peut surement servir à d'autres.

Share this post


Link to post
Share on other sites

Je reviens...

Apres reflexion, j'ai pensé a une amelioration.
Je pense que le mieux serait de rajouter une table dans la base de donnée
ex : ps_test avec 2 champs : numero et reference

et dans le fichier product-list.tpl modifier afin de pouvoir afficher le texte de 'reference' suivant le 'numero' par rapport a une categorie.
meme en repetant une ligne de code par rapport aux categories.
(Peut etre que l'on peut faire plus simple)

La j'imagine que c'est un peu plus compliqué. mais cela permettrai de pouvoir modifier ou supprimer le texte a ajouter.
Cela peut servir pour le referencement de mot clé.

PS: Ce n'est pas une demande juste une idée d'amelioration, je laisse donc le post en resolu.

Share this post


Link to post
Share on other sites

Je m'en doutais... c'est pour cela que j'ai laissé le post en Résolu.
le but serait de faire la meme fonctionnalité que le code que tu m'as fourni.
A la difference que l'on puisse afficher un texte rentré dans une "variable"
Ce qui permetrait de pouvoir soit le modifier soit le suprrimer ulterieurement.
Ceci n'a d'interet que si d'autre personne en aurait l'utilité. Car la je pense qu'il
faut passer un peu plus de temps à le faire.

Mais le code que tu m'as fourni me convient parfaitement. je l'ai deja utilisé.
Le reste n'est qu'une idée.

RE:Merci.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More