Suppression de contenu en masse
wolfatthedoor
-
flokocha Messages postés 1510 Date d'inscription Statut Membre Dernière intervention -
flokocha Messages postés 1510 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaite supprimer du contenu présent dans plusieurs articles de mon site (plus de 2000 pages) et l'idéal serait une requête pour supprimer ce contenu en masse (Site sous wordpress).
Le contenu que je souhaite supprimer dans mes pages est une iframe.
Donc je souhaite trouver une requête pour effacer le contenu qui se trouve entre "<iframe" et "</iframe>" (y compris ces 2 balises).
Connaissez-vous une solution ?
Merci d'avance
Romuald
Je souhaite supprimer du contenu présent dans plusieurs articles de mon site (plus de 2000 pages) et l'idéal serait une requête pour supprimer ce contenu en masse (Site sous wordpress).
Le contenu que je souhaite supprimer dans mes pages est une iframe.
Donc je souhaite trouver une requête pour effacer le contenu qui se trouve entre "<iframe" et "</iframe>" (y compris ces 2 balises).
Connaissez-vous une solution ?
Merci d'avance
Romuald
A voir également:
- Suppression de contenu en masse
- Forcer suppression fichier - Guide
- Renommer des fichiers en masse - Guide
- Dispositif de stockage de masse usb - Télécharger - Pilotes & Matériel
- Fusionner deux cellules excel en gardant le contenu - Guide
- Word a trouvé du contenu illisible - Guide
2 réponses
J'ai avancé sur le sujet, avec cette requête :
update table set champ = concat(substring(post_content, 0, INSTR(post_content, '<iframe')), substring(post_content, INSTR(post_content, '</iframe>') + length('</iframe>')))
Ça fonctionne presque MAIS :
- sur les articles où il y a l'iframe, ça supprime bien l'iframe mais ça supprime également tout le contenu avant l'iframe.
- sur les articles où il n'y a pas d'iframe, ça supprime les 16 premiers caractères de l'article.
update table set champ = concat(substring(post_content, 0, INSTR(post_content, '<iframe')), substring(post_content, INSTR(post_content, '</iframe>') + length('</iframe>')))
Ça fonctionne presque MAIS :
- sur les articles où il y a l'iframe, ça supprime bien l'iframe mais ça supprime également tout le contenu avant l'iframe.
- sur les articles où il n'y a pas d'iframe, ça supprime les 16 premiers caractères de l'article.
Salut,
Je te propose de procéder tout simplement comme ceci :
UPDATE table SET champ = CONCAT(SUBSTRING_INDEX(champ, '<iframe', 1), SUBSTRING_INDEX(champ, '</iframe>', -1));
Illustration :
Je te propose de procéder tout simplement comme ceci :
UPDATE table SET champ = CONCAT(SUBSTRING_INDEX(champ, '<iframe', 1), SUBSTRING_INDEX(champ, '</iframe>', -1));
Illustration :
mysql> SET @test = "<div>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</div><iframe>Tata Yoyo qu'est ce qu'il y a sous ton grand chapeau</iframe><div>Vivamus mollis quis nisl dignissim mollis. Phasellus aliquet at nisl et accumsan.</div>"; Query OK, 0 rows affected (0.00 sec) mysql> SELECT CONCAT(SUBSTRING_INDEX(@test, '<iframe', 1), SUBSTRING_INDEX(@test, '</iframe>', -1)) as RESULT\G *************************** 1. row *************************** RESULT: <div>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</div><div>Vivamus mollis quis nisl dignissim mollis. Phasellus aliquet at nisl et accumsan.</div> 1 row in set (0.00 sec)