Requete SQL qui remplace des occurences précises (JPG ->j

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 : Requete SQL qui remplace des occurences précises (JPG ->j

par plex » 21 févr. 2006, 15:22

merci bien,
Je voit ce que ca donne

par zeus » 21 févr. 2006, 15:12

Elle t'es donnée par mario un peu plus haut

Il te suffit de modifier tout les champs que tu désir modifier dans la requete UPDATE et de faire une requete par caractère que tu veux modifier

par plex » 21 févr. 2006, 14:02

tu pourrais me donner la syntax pour ton idée s'il te plait zeus ? afib que je voit la facon de procéder

merci de ton aide

par zeus » 21 févr. 2006, 13:26

Tant que le champs sue tu modifies n'est pas la clé primaire de ta table, il n'y aura pas de problèmes

par plex » 21 févr. 2006, 13:22

meric pour ta réponse Zeus :)

mais ce n'était qu'un exemple ...
en effet je n'ai surement qu'une seule occurence de élec ..
j'ai peut etre

elèc.jpg
élèc.jpg
élipor.jpg
hélene.jpg

et j'en passe ..

par zeus » 21 févr. 2006, 10:50

la 2eme solution, ça va chercher les occurences dans les mots
élec.jpg :arrow: elec.jpg

Mais je te conseille de tester sur une copie de ta base au cas où ...

par plex » 21 févr. 2006, 10:11

merci MARIO :)
mais est ce que ca va juste remplacer les occurences de 'é' par un e ?

ou bien est ce que ca va tout remplacer ?

c'est a dire, j'ai

élec.jpg

est ce que ca va donner

elec.jpg
ou alors ... est ce que ca mettra juste un 'e' a la place du mot ?

par mario » 08 févr. 2006, 23:41

merci pour ta réponse, mais je ne maitrise pas trop ce genre de fonctions :(
n'y a t il pas une solution avec mysql ?

Code : Tout sélectionner

UPDATE nom_table SET nom_champ = REPLACE(nom_champ,'ancienMot','nouveauMot')
exemple:

Code : Tout sélectionner

UPDATE matable, SET monchamp = REPLACE(monchamp, 'é', 'e')
c'est une solution, dumoins je n'en connais pas d'autre (pour l'instant)

par plex » 08 févr. 2006, 23:03

merci pour ta réponse, mais je ne maitrise pas trop ce genre de fonctions :(
n'y a t il pas une solution avec mysql ?

par Cyrano » 08 févr. 2006, 22:47

Il y a les éléments dans le tuto sur l'upload de fichier qui pourraientt te servir :
<?php
// enlever les accents
$dest_fichier = strtr($dest_fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
// remplacer les caracteres autres que lettres, chiffres et point par _
$dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
?>
à adapter à ton code pour renommer tes fichiers.

Requete SQL qui remplace des occurences précises (JPG ->j

par plex » 08 févr. 2006, 22:19

bonjour

Je travail sous mysql via phpMyadmin et php.
Mon site fonctionne bien mais j'ai manqué un peu de rigeur lors de la création de certains éléments figurant dans ma base de données en effet je suis débutant ...
Certains navigateurs n'aime pas les .JPG ou encore les è é dans les noms de fichiers ...
En gros, certains éléments graphiques de mon site comportant des accents ou des ( ) et - ne s'affichent pas.
J'aimerais savoir s'il est possible de faire une requete qui permettrai de pallier a ce problème.
Par contre, je ne connait pas trop la marche a suivre pour ce genre de requete.

Je dois donc remplacer toutes les occurences
de "é" par exemple

dans la table 'products'

pour les champs

Code : Tout sélectionner

products_image products_image_med products_image_lrg products_image_sm_1 products_image_xl_1 products_image_sm_2 products_image_xl_2 products_image_sm_3 products_image_xl_3 products_image_sm_4 products_image_xl_4 products_image_sm_5 products_image_xl_5 products_image_sm_6 products_image_xl_6
par exemple, remplacer

vélo.JPG
par
vélo.jpg dans tout les champs de la table products.

mais est ce qu'il est possible seulement de remplacer juste le caractère désiré et si oui comment, j'ai beau lire différents manuels sur la fonction replace, je ne trouve pas :(

est ce que quelqu'un pourrait me donner une piste ou m'aider a faire ma requete, je n'ai pas envi de foirer toute ma base, elle fait plus de 5Mo ...



D'avance, un grand merci.
PlEx :oops: