Jump to content

Recommended Posts

Bonjour, je suis passé en https, dans la description de mes fiches produits j'ai mis des liens (vers une page de mon site et une image) redirigeant sur des http, je voulais savoir si c’était possible de faire cette modification directement avec une requête SQL, et si oui comment ?

 

Merci par avance.

Edited by Style-Idea (see edit history)
Link to comment
Share on other sites

Je ne vois pas de FROM dans votre requete ?

De plus celle-ci ne fonctionnera que si le http est au milieu du texte

 

Attention certaines urls ne sont peut être pas valides en https (liens externes)

Link to comment
Share on other sites

Je ne vois pas de FROM dans votre requete ?

De plus celle-ci ne fonctionnera que si le http est au milieu du texte

 

Attention certaines urls ne sont peut être pas valides en https (liens externes)

 

Merci Eolia pour votre réponse.

 

Aucune idée pour le from, sincèrement je n'y connais rien.

 

Je l'avais déjà fait pour modifier mes liens lorsque j'avais changé de nom de domaine, car on m'avait donné la bonne requête, donc je me disais pourquoi pas changer mes http par cette méthode.

 

Je n'ai pas de liens externe, que interne, c'est pour cela que je cherche à modifier directement tous les http de mes fiches produits par des https ;)

 

Sinon au pire si je trouve pas, j'exporte ma table et modifie avec un éditeur, mais je pensai vraiment qu'il y aurai plus simple avec une simple requête.

 

 

Voila d'ou vient la requete que j'ai copié/collé: https://stackoverflow.com/questions/42857921/search-replace-http-to-https-in-database

Edited by Style-Idea (see edit history)
Link to comment
Share on other sites

C'est ton shop, tu fais comme tu veux mais là je sens la catastrophe pointer.

Déjà il n'y a pas de lien dans les fiches produit généralement.

Page cms, liens des menus, ...

Il n'y a pas une table, mais plusieurs, et pas un seul par enregistrement, et pas au début.

 

Aucune attaque personnelle, mais je hais les copieur/colleur. Peu de temps après il faut les dépanner avec des problèmes qui ne peuvent arriver. Et que la plupart cachent, ce qui fait perdre du temps a tout le monde...

Link to comment
Share on other sites

C'est ton shop, tu fais comme tu veux mais là je sens la catastrophe pointer.

Déjà il n'y a pas de lien dans les fiches produit généralement.

Page cms, liens des menus, ...

Il n'y a pas une table, mais plusieurs, et pas un seul par enregistrement, et pas au début.

 

Aucune attaque personnelle, mais je hais les copieur/colleur. Peu de temps après il faut les dépanner avec des problèmes qui ne peuvent arriver. Et que la plupart cachent, ce qui fait perdre du temps a tout le monde...

 

Vous pouvez stopper la provocation et arrêter de prendre les gens pour des cons SVP, merci!

Link to comment
Share on other sites

C'est toi qui nous prend pour des mollusques.
Tu sors un message d'erreur de ton chapeau et une requête de ta manche et les 2 ne vont pas ensemble.
Jamais. Ni dans cet univers, ni dans un autre, et pour toute réponse, tu ne sais pas.

 

  • Like 1
Link to comment
Share on other sites

doekia a entièrement raison, modifier http en https dans un table n'a pas de sens dans la mesure ou les urls ne sont pas stockées dans la bdd, de plus si vous voulez changer http par https, il faut le faire sur toutes les pages, pas juste les produits.
Quand à cette requète SQL, ce n'est pas une requète SQL, si vous regardez bien juste avant il y a marqué "I would use insert:" :
 

I would use insert:

update t
set url = insert(url, 5, 0, 's')
where url like 'http:%';

 
 
Avez vous essayer l'option "Activer le SSL" ?




 

  • Like 1
Link to comment
Share on other sites

C'est toi qui nous prend pour des mollusques.

Tu sors un message d'erreur de ton chapeau et une requête de ta manche et les 2 ne vont pas ensemble.

Jamais. Ni dans cet univers, ni dans un autre, et pour toute réponse, tu ne sais pas.

 

 

 

Voila j'ai reformuler ma question de départ pour vous éviter de troller. J’espère que vous allez arrêtez de faire du spam et du hors sujet, en vous remerciant par avance.

 

 

doekia a entièrement raison, modifier http en https dans un table n'a pas de sens dans la mesure ou les urls ne sont pas stockées dans la bdd, de plus si vous voulez changer http par https, il faut le faire sur toutes les pages, pas juste les produits.

Quand à cette requète SQL, ce n'est pas une requète SQL, si vous regardez bien juste avant il y a marqué "I would use insert:" :

 

 

 

Avez vous essayer l'option "Activer le SSL" ?

 

 

 

 

 

 

En fait j'ai du mal m'expliquer et j'en suis désolé.

 

Pour le passage en https aucun problème. Pour les test et sauvegarde, c'est bon je suis rodé, ça fait 8 ans que j'utilise Prestashop :)

 

Je re explique ce que je cherche à faire, c'est tout simple, mais je ne sais pas le faire car je n'y connais rien en language mysql.

 

En fait, dans le descriptif de mes produits, j'ai mis des liens vers des pages de mon site et des images avec au debut http://www... , donc du coup ça m’enlève le petit cadenas tant convoité. Donc au lieu de modifier produit par produit mes 2 ou 3 liens qui se trouvent dans la description longue de me produit, je voulais directement faire une requête sql pour ajouter un 's' à la suite de tous mes http qui se trouve dans la table ps_product_lang.

 

Je rajoute juste que je l'avais deja fait lorsque j'avais changé de nom de domaine, et aucun problème.

 

Bonne soirée :)

Edited by Style-Idea (see edit history)
Link to comment
Share on other sites

modifier http en https dans un table n'a pas de sens dans la mesure ou les urls ne sont pas stockées dans la bdd, de plus si vous voulez changer http par https, il faut le faire sur toutes les pages, pas juste les produits.

 

Heu... là je mets un bémol^^

Il y a beaucoup d'url stockées en base de données. Que ce soit dans la table configuration, dans les tables _lang des produits, cms etc... ou dans celles de certains modules qui stockent les chemins d'upload des images ou autres.

 

La bonne requête consiste à rechercher dans toutes les tables les chaines correspondant exactement à "http://votre-domaine.com" et à le remplacer par la version ssl.

 

Allez voir la fonction replace() de MySql...

 

A l'avenir, mettez vos liens en urls relatives plutôt qu'absolues.

Link to comment
Share on other sites

Il n'empêche que même si la requête initiale (maintenant effacée du topic) ne faisait pas tout le job. Cette requête fonctionnait et n'aurais jamais donné le message d'erreur mentionné (et également effacé du topic).

Link to comment
Share on other sites

Il y a beaucoup d'url stockées en base de données. Que ce soit dans la table configuration, dans les tables _lang des produits, cms etc... ou dans celles de certains modules qui stockent les chemins d'upload des images ou autres.

désolé je ne vois pas d'url commençant par http dans ces tables :

 

 

post-95593-0-36195600-1495698134.jpg

 

 

 

post-95593-0-13961500-1495698136.jpg

 

 

post-95593-0-65160000-1495698132.jpg

 

 

Il faut vraiment utiliser la class Link pour les liens.

post-95593-0-65160000-1495698132_thumb.jpg

post-95593-0-36195600-1495698134_thumb.jpg

post-95593-0-13961500-1495698136_thumb.jpg

Link to comment
Share on other sites

Tu es sérieux ou tu raisonnes à la façon Prestashop ? (Genre "Désolé, on ne reproduit pas")

 

1°) Tu cherches dans une 1.7, ce qui limite beaucoup le champ des possibles

2°) Tu n'en n'as pas dans TA base de données donc personne n'en n'a...

3°) Enfin si...tu en as 2 dans ta table ps_configuration curieusement ;)

4°) Si la question est posée c'est que certains rencontrent ce problème (Et il existe réellement vu que je l'ai rencontré de nombreuses fois)

 

Ce que je te propose:

1°) Exécute tes requêtes sur les tables de celui qui a créé ce topic et on parlera de choses tangibles

2°) Installe un thème TM ou TF et regarde la table ps_configuration juste pour rigoler 5mn^^

Edited by Eolia (see edit history)
Link to comment
Share on other sites

Inutile de s'énerver, si tu as des exemples pour les produits, cms... je suis preneur.

je viens de vérifier sur 1.6 en local, sur ps_configuration, ps_product_lang et ps_cms_lang, même résultat que sur 1.7 : aucun lien http://127.0.0.1/... 

 

 

Si les gens veulent mettre les liens complet dans la table ps_configuration, c'est leur problème, mais ce n'est pas ça qu'il faut faire selon moi, mais si vous avez un autre avis on peut en débattre.

 

Et la classe Link pour les liens dans une description produit ou une page cms, tu m'expliqueras...

$link = new Link();

$link->getCMSLink($id_cms)

 

 

https://github.com/PrestaShop/PrestaShop/blob/c8533c30ee8a0b8124f1a499b945c98a6c6828b5/classes/Link.php#L503-L541

 

 

 

Exécute tes requêtes sur les tables de celui qui a créé ce topic et on parlera de choses tangibles

si tu parles de :

 

 

 

update t
set url = insert(url, 5, 0, 's')
where url like 'http:%';

 

alors c'est une grossière erreur, si dans la description d'un produit tu as un lien vers le fabricant, fournisseur ou autre, ça va remplacer http par https

Link to comment
Share on other sites

Whaou tu te serts souvent de prestashop?

 

 

Ajoute une image dans une page CMS et dit nous si tu n'as pas de h t t p : / / dans ta table cms_lang

Fait de même sur une fiche produit

Fait des liens interne dans des menus

 

Le monsieur qui a posé la question a expressement dit, "j'ai ajouté des liens sur mes fiches produits". Son analyse est correcte a devoir corriger la table product_lang.

Edited by doekia (see edit history)
Link to comment
Share on other sites

Inutile de s'énerver, si tu as des exemples pour les produits, cms... je suis preneur.

 

 

Je ne m'énerve pas le moins du monde, je constate simplement que tu ne dois pas avoir beaucoup de bases de données clients sous la main

 

Un exemple parmi d'autres:

SELECT * FROM `ps_product_lang` WHERE `description` LIKE '%http%' LIMIT 50 (0.002 s)

 Modification	id_product	id_shop	id_lang	description	description_short	link_rewrite	meta_description	meta_keywords	meta_title	name	available_now	available_later
79	1	1	<h5><img src="http://www.domain.fr/img/cms/blouse%20fleurie.jpg" alt="" width="412" height="412"...	<p>L'indispensable petit pantalon blanc coupe slim, un classique qui s'harmonisera avec tout style d...	pantalon-slim-blanc	Pantalon slim blanc, l'indémodable petit pantalon à avoir dans son dressing.
Frais De Port Offert À...	 	Pantalon Slim Blanc	Pantalon Slim Blanc	 	 
103	1	1	<h4><img src="http://www.domain.fr/img/cms/chemise%20la%C3%A7age%20dos.jpg" alt="" width="408" h...	<p>L'indispensable Jeans stone coupe slim, un classique qui s'harmonisera avec tout style de tops, c...	jeans-slim-stone	L'indispensable jeans slim que vous mettez en toutes occasions. Sa matière extensible fera de lui vo...	 	Jeans Slim stone	Jeans Slim Stone	 	 
119	1	1	<h4><img src="http://www.domain.fr/img/cms/blouson%20cuir.jpg" alt="" width="458" height="458" /...	<p>Pantalon à pont noir coupe slim, boutons dorés sur les cotés. Les pantalons à pont donne un effet...	pantalon-slim-a-pont-noir	Découvrez notre sélection de pantalons & shorts Miss Dress. Du petit jeans au pantalon slim, en pass...	 	Pantalon slim noir boutons dorés	Pantalon Slim boutons dorés	 	 
121	1	1	<h4><img src="http://www.domain.fr/img/cms/pantalon%20blanc%20pont.jpg" alt="" width="444" heigh...	<p>Pantalon à pont blanc coupe légèrement évasée, boutons dorés sur les cotés pour un esprit marin. ...	pantalon-blanc-a-pont-boutons-dores	Pantalon blanc à pont orné de boutons dorés pour un esprit marin, un classique indémodable que vous ...	 	Pantalon Blanc à pont boutons dorés	Pantalon Blanc à pont boutons dorés	 	 
191	1	1	<p>Existe en <a href="http://www.domain.fr/accueil/194-robe-patineuse-noire-epaules-denudees.htm...	<p>Robe coupe patineuse, épaules dénudées et fermeture par zip caché dans le dos. </p>
<p></p>	robe-patineuse-kaki-epaules-denudees	Robe coupe patineuse kaki épaules dénudées	 	Robe patineuse kaki épaules dénudées	Robe patineuse kaki épaules dénudées	 	 
194	1	1	<p>Existe en <a href="http://www.domain.fr/accueil/1[spam-filter]robe-patineuse-kaki-epaules-denudees.html...	<p>Robe noire coupe patineuse, épaules dénudées et fermeture par zip caché dans le dos. </p>	robe-patineuse-noire-epaules-denudees	Robe coupe patineuse noire épaules dénudées	 	Robe patineuse noire épaules dénudées	Robe patineuse noire épaules dénudées	 	 
195	1	1	<p>Existe en <a href="http://www.domain.fr/accueil/194-robe-patineuse-noire-epaules-denudees.htm...	<p>Robe bleue coupe patineuse, épaules dénudées et fermeture par zip caché dans le dos. </p>	robe-patineuse-bleue-epaules-denudees	Robe coupe patineuse bleue épaules dénudées	 	Robe patineuse bleue épaules dénudées	Robe patineuse bleue épaules dénudées	 	 
196	1	1	<p>Existe en <a href="http://www.domain.fr/accueil/197-robe-noire-facon-daim-taille-ouverte.html...	<p>Robe taupe coupe prés du court, avec deux ouvertures de chaque cotés de la taille. Fermeture par ...	robe-taupe-facon-daim-taille-ouverte	Robe taupe façon daim ultra féminine. Vous aimerez les ouvertures à la tailles qui lui donne son cot...	 	Robe Taupe façon daim taille ouverte	Robe Taupe façon daim taille ouverte	 	 
197	1	1	<p>Existe en <a href="http://www.domain.fr/accueil/196-robe-taupe-facon-daim-taille-ouverte.html...	<p>Robe noire coupe prés du court, avec deux ouvertures de chaque cotés de la taille. Fermeture par ...	robe-noire-facon-daim-taille-ouverte	Robe Noire façon daim ultra féminine. Vous aimerez les ouvertures à la tailles qui lui donne son cot...	 	Robe Noire façon daim taille ouverte	Robe Noire façon daim taille ouverte	 	 
198	1	1	<p>Existe en <a href="http://www.domain.fr/accueil/212-robe-camel-facon-daim-fendue-chaine-a-l-e...	<p>Robe Taupe façon daim fendue chaîne à l'encolure.. Fermeture par zip discret à l'arrière.</p>	robe-taupe-facon-daim-fendue-chaine-a-l-encolure	Robe façon daim couleur Taupe, fendue à l'avant et détail chaine à l'encolure.	 	Robe Taupe façon daim fendue chaine à l'encolure.	Robe Taupe façon daim fendue chaîne à l'encolure.	 	 
211	1	1	<p>Existe en <a href="http://www.domain.fr/accueil/212-robe-camel-facon-daim-fendue-chaine-a-l-e...	<p>Robe Nude façon daim fendue chaîne à l'encolure.. Fermeture par zip discret à l'arrière.</p>	robe-nude-facon-daim-fendue-chaine-a-l-encolure	Robe façon daim couleur Nude, fendue à l'avant et détail chaine à l'encolure.	 	Robe Nude façon daim fendue chaine à l'encolure.	Robe Nude façon daim fendue chaîne à l'encolure.	 	 
212	1	1	<p>Existe en <a href="http://www.domain.fr/accueil/198-robe-taupe-facon-daim-fendue-chaine-a-l-e...	<p>Robe Camel façon daim fendue chaîne à l'encolure.. Fermeture par zip discret à l'arrière.</p>	robe-camel-facon-daim-fendue-chaine-a-l-encolure	Robe façon daim couleur Camel, fendue à l'avant et détail chaine à l'encolure.	 	Robe Camel façon daim fendue chaîne à l'encolure.	Robe Camel façon daim fendue chaîne à l'encolure.	 	 
238	1	1	<p>Existe en <a href="http://www.domain.fr/accueil/197-robe-noire-facon-daim-taille-ouverte.html...

Si les gens veulent mettre les liens complet dans la table ps_configuration, c'est leur problème, mais ce n'est pas ça qu'il faut faire selon moi, mais si vous avez un autre avis on peut en débattre.

 

Ce ne sont pas les gens mais le plus souvent des modules à l'insu de l'utilisateur justement^^

 

 

Et la classe Link pour les liens dans une description produit ou une page cms, tu m'expliqueras...

$link = new Link();

$link->getCMSLink($id_cms)

 

 

https://github.com/PrestaShop/PrestaShop/blob/c8533c30ee8a0b8124f1a499b945c98a6c6828b5/classes/Link.php#L503-L541

 

Ok, je suis débile profond et je ne connais pas Prestashop donc...

Là tu me donnes du code, je ne crois pas que l'e-commerçant ait accès à ce genre de choses.

 

Par contre dans l'éditeur des descriptions Tiny_mce, si celui-ci veut mettre un lien vers un autre produit explique-moi comment il utilise ton code $link ????

 

si tu parles de :

 

 

alors c'est une grossière erreur, si dans la description d'un produit tu as un lien vers le fabricant, fournisseur ou autre, ça va remplacer http par https

Je n'ai jamais parlé d'exécuter le code du 1er post (qui n'est plus là d'ailleurs) mais celui que j'ai fourni en exemple:

 

 

La bonne requête consiste à rechercher dans toutes les tables les chaines correspondant exactement à "http://votre-domaine.com" et à le remplacer par la version ssl.

 

Donc s'il faut te l'écrire pour que ce soit plus clair:

Pour chaque table XXXX_lang:

SELECT * FROM `XXXX_lang` WHERE `colonne_a_checker` LIKE '%http://mon-domaine.com%' 

Faut arrêter de nous prendre pour des lapins de 3 semaines^^

Edited by Eolia (see edit history)
Link to comment
Share on other sites

...

 

 

alors c'est une grossière erreur, si dans la description d'un produit tu as un lien vers le fabricant, fournisseur ou autre, ça va remplacer http par https

 

Aucun autre lien de fournisseur ou autre, QUE des liens qui pointent sur mon site. Avec des 'si' on va encore plus compliquer le problème :)

 

et

 

post-32672-0-78408400-1495709967_thumb.png

 

 

 

A l'avenir, mettez vos liens en urls relatives plutôt qu'absolues.

 

Alors la complétement d'accord, j'ai commencé à le faire manuellement, mais c'est un enfer de modifier produit par produit. Mais la pour ma requête, ça serait peut-être plus simple de juste ajouter un 's' à mes 'http' :) (c'est juste une supposition)

 

 

 

Je suis sur une piste, je vais finir par trouver tout seul vu comment ça part dans tous les sens :) si un modo pouvait régler ce problème d’ailleurs 'Mort de rire'

 

 

UPDATE ps_product_lang SET description = replace(description, ‘http’,’https’);

 

 

 

 

 

PS: oubliez mon copié/collé plus haut, j'ai été trop vite sur le coup.

Edited by Style-Idea (see edit history)
Link to comment
Share on other sites

UPDATE ps_product_lang SET description = replace(description, ‘http://url-de-ton-site’,’https://url-de-ton-site’);

Ceci évite de se poser des questions de et "si". ça ne modifie que les liens internes

 

Il te reste à faire cela sur toutes les autes tables langue pour tous les champs type texte

Attention aux contenus sérialisés qui eux ne peuvent être fait que manuellement

Edited by doekia (see edit history)
Link to comment
Share on other sites

C'est curieux... j'écris 2 fois qu'il faut faire une recherche exacte et les 2 intervenants cherchent toujours uniquement "http"...

 

Continuez comme ça et effectivement vous irez loin^^

 

Bye.

Link to comment
Share on other sites

UPDATE ps_product_lang SET description = replace(description, ‘http://url-de-ton-site’,’https://url-de-ton-site’);

Ceci évite de se poser des questions de et "si". ça ne modifie que les liens internes

 

Il te reste à faire cela sur toutes les autes tables langue pour tous les champs type texte

Attention aux contenus sérialisés qui eux ne peuvent être fait que manuellement

 

 

Ah oui parfait, même si comme je l'ai dit je n'ai QUE des liens en interne.

Merci de m'avoir laissé le soin de trouver la bonne requête tout seul, c'est toujours plus valorisant et constructif ;)

 

Pour le reste je vais tout faire manuellement, il n'y aura plus grand chose à faire.

 

 

C'est curieux... j'écris 2 fois qu'il faut faire une recherche exacte et les 2 intervenants cherchent toujours uniquement "http"...

 

Continuez comme ça et effectivement vous irez loin^^

 

Bye.

 

C'est sur qu'avec tes interventions, finalement je n'ai pas été bien loin ^^

Link to comment
Share on other sites

Tu recommence à faire ton troll, dommage tu t’étais rattrapé, bon en même temps tu n'a fait que copié/coller ma solution, et je haie les copieur/colleur haha

 

Ensuite pour Eolia, c'est elle qui m'attaque maintenant, donc voila je réplique aussitôt pour rester dans votre ambiance malsaine.

 

En faite, quitte à ajouter des 's' à mes http, pourquoi pas tout simplement par cette même requête supprimer les http://monsite par rien ?!

EDIT: C'est bon sujet résolu, vous pouvez fermer pour éviter les spams.

Edited by Style-Idea (see edit history)
Link to comment
Share on other sites

Salut,

Je pense que si tu es novice il ne faut pas aller directement dans la base de donnée et chercher à faire des requêtes que tu ne comprend pas car cela pourrait endommager ton site.

Prestashop à prévu un SQL manager afin d'envoyer des rêquetes en SELECT pour récupérer un fichier csv

 

Une solution simple et plus secure serait de faire une extraction de tes descriptions, de les travailler avec des find and replace dans un tableur style libreoffice et ensuite de réimporter tes produits via le système d import de prestashop.

SELECT 
p.`id_product` AS `ID`,
pl.`name` AS `Nom`,
pl.`description` AS `Decription_longue`,

FROM `ps_product` p 
LEFT JOIN `ps_product_lang` pl ON (p.`id_product` = pl.`id_product`) 

WHERE 1 AND pl.id_lang = 1 
GROUP BY p.`id_product` 
ORDER BY p.`id_product` ASC

bon courage

  • Like 1
Link to comment
Share on other sites

Il @Eolia, t'a juste donné la solution au topic #10

Tu crois que tu es là pour me donner des points.

 

Ne te bille pas, je ne répondrais plus a aucun des tes topics

 

Mais tu n'a servi à rien du tout, je t'ai demandé d’arrêter de venir faire ton troll dans mon sujet, mais non c'est plus fort que toi, il faut que tu revienne et que tu revienne encore.

J'ai trouvé la solution tout seul et tu es humilié. Je t'ai mis un j'aime car tu me fais pitié.

Ton petit écran cathodique doit trop te chauffer le cerveau pépé (je me permet puisque tu te permet de me dire ce que j'ai à faire), va t’aérer l'esprit et lâche le forum quelques heures.

 

Et j'ai même fait mieux pour un novice, debutant, ignare, incapable ...., j'ai modifier toutes mes url absolue en relatives par une petite requete mysql, c’était si simple.

Je le répète la requête est toute conne, honte à vous lol.

Arrêtez de tous vous prendre trop au sérieux et croire que vous êtes des dieux (à 80€ l'intervention mdr)

 

Sur ce bon vent.

Edited by Style-Idea (see edit history)
Link to comment
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
×
×
  • Create New...