rechercher/remplacer

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : rechercher/remplacer

par Sékiltoyai » 10 sept. 2007, 19:40

Ouais mais l'avantage de sed c'est qu'il est beaucoup plus puissant que tout remplacement d'éditeur texte (sauf peut être emacs :) ), mais le problème, c'est que si tu n'es pas sous un système UNIX, tu n'auras pas accès à ce programme…

par lminfo » 10 sept. 2007, 14:35

Oui je comprends!

Je pensais plutôt à un produit comme phpMyAdmin pour faire l'import/export...
Ensuite, on peut se servir de SED ou de tout autre éditeur de texte...

par Sékiltoyai » 09 sept. 2007, 03:21

Euh, en cas d'export, si c'est fait par php, cela va demander énormément de ressources, et cela peu surcharger la mémoire de php. Il vaut mieux utiliser la ligne de commande, et les commandes mysql pour exécuter une requète (il doit y avoir peut être aussi mysql_dump pour exporter une base), et la commande sed pour effectuer des remplacements.

par lminfo » 08 sept. 2007, 20:37

Une façon relativement simple d'effectuer les remplacements pourrait être de suivre les étapes suivantes:

1. Exporter chaque table dans un fichier texte (format CSV)
2. Effectuer le remplacement sur chaque ligne du fichier à l'aide des expressions régulières et de la fonction PHP ereg_replace (P1, P2, Ch)

Dans laquelle la fonction recherche toutes les occurences du patron P1 ('é') dans la chaîne Ch et la remplace par le patron P2 ('à')

3. Enfin, importer le fichier CSV modifié vers la BD[/i][/b]

par Sékiltoyai » 04 sept. 2007, 17:50

Non, tu dois le faire toi même sur tous les champs textes de ta table.

par Invité » 04 sept. 2007, 16:44

je n'ai pas accès à la ligne de commande chez mon hébergeur mutualisé.
REPLACE(str,from_str,to_str) a l'air intéressant.
Seul pb, cette fonction demande en 1er argument la chaine à traiter.
Je voudrais traiter tous les mots de ma bdd qui contiennent "é", pas un mot en particulier.

Y a til une syntaxe pour travailler toutes les occurences d'un caractère et pas toutes les occurences d'un mot?

par Sékiltoyai » 03 sept. 2007, 17:02

Tu as l'utilitaire en ligne de commande replace ainsi que la fonction REPLACE()

rechercher/remplacer

par Invité » 03 sept. 2007, 15:04

Bonjour à tous,

est-il possible de faire des rechercher/remplacer sur l'ensemble d'une bdd?
Par exemple, je souhaite remplacer dans toutes les tables, tous les "é" par des "à" (modifs sur les données) quelquesoit le champ ou l'engergistrement où se trouve ce caractère.

Merci pour vos réponses.