questions simples manipulation de chaîne ..

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 : questions simples manipulation de chaîne ..

Re: questions simples manipulation de chaîne ..

par xTG » 12 août 2011, 08:44

Pour faire ton update faut d'abord rappatrier les données sous PHP, les traiter et faire les mises à jour.
En gros : SELECT -> explode -> maj -> implode -> update

Re: questions simples manipulation de chaîne ..

par olivierg » 11 août 2011, 23:46

merci, la fonction implode a résolu mon problème.

malgré ça si quelqu'un a une idée pour la question 1) simplement pour ma connaissance personelle

Re: questions simples manipulation de chaîne ..

par Mazarini » 11 août 2011, 15:44

Bonjour,

La fonction implode est le pendant d'explode pour faire une chaine à partir d'un tableau.

Sur le plan de la conception, il serait mieux de faire une table avec les valeurs de ta chaine en mettant un id par enregistrement et en ajoutant l'identifiant qui te permet de retrouver ta chaine.

questions simples manipulation de chaîne ..

par olivierg » 11 août 2011, 15:23

bonjour,

je ne saurais trop décrire ce que je désire faire avec les bons mots (changer un caractère ou en ajouter un dans une chaine)

actuellement j'ai une base (MySQL) avec un de mes champs au format varchar classique.
dans ce champ j'ai une série d'ID (séparateur : un espace), exemple :

Code : Tout sélectionner

nom valeur id_machin 1 3 6 8 11
je dois faire une requête d'update de cette valeur en la comparant, et j'aimerais supprimer une valeur dedans, ou en rajouter.
par exemple passer de "1 3 6 8 11" à "1 8 11" ou encore "1 3 4 5 8 11 14" etc.

quelles fonctions php (ou mysql) me permettent de faire cela ?
je connais str_replace pour remplacer un bout de la chaine, mais comment faire le reste ?

Autrement (2nde question), je sais que je peux me servir d'un tableau pour extraire la valeur par exemple avec un :

$exploded = explode("", $champ_valeur);
et récupérer mes valeurs avec un $exploded[1], $exploded[11] etc.. par exemple.
c'est peut-être mieux, mais à ce moment là, comme faire pour re-générer une nouvelle variable à partir des valeurs du tableau ?

par exemple, si "avant" j'ai :

$exploded['1']
$exploded['3']
$exploded['6']
$exploded['8']
$exploded['11']

après avoir retiré/rajouter des valeurs dans le tableau, j'ai :

$exploded['8]'
$exploded['11']
$exploded['13']

comment fais-je pour re-génrer une variable de type $var = '8 11 13' à partir des valeurs du tableau ? avec une boucle for tout simplement ?

merci !