MYSQL Mise a jour de toute une table

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 : MYSQL Mise a jour de toute une table

par christele » 03 févr. 2009, 19:26

Ça devrait le faire. Tu n'es pas obligé(e) de passer par PHP. Tu peux aussi utiliser un client mysql ou phpmyadmin.
Je suis obligée dans la mesure ou je gardes trace de mes outils, et au moins je fais tourner mes outils en local et sur le site ça va trés vite :lol:

Merci a toi de ton aide

par Ripat » 03 févr. 2009, 16:53

En fait j'emploies souvent ces formes ... qu' en penses tu
Ça devrait le faire. Tu n'es pas obligé(e?) de passer par PHP. Tu peux aussi utiliser un client mysql ou phpmyadmin.

par christele » 03 févr. 2009, 15:08

J' ais une question au passage qui n'a rien a voir, pourquoi je n'arrives pas a me mettre un avatard :shock:
http://www.phpfrance.com/forums/voir_sujet-12542.php
http://www.phpfrance.com/forums/voir_sujet-6546.php
Merci pour l'info :D

par albat » 03 févr. 2009, 12:22

J' ais une question au passage qui n'a rien a voir, pourquoi je n'arrives pas a me mettre un avatard :shock:
http://www.phpfrance.com/forums/voir_sujet-12542.php
http://www.phpfrance.com/forums/voir_sujet-6546.php

par christele » 03 févr. 2009, 12:07

Les fonctions MySQL te permettent effectivement de faire un certain nombre de choses hors PHP mais si tu dois régulièrement modifier l'ensemble d'une table, il y a sans doute un problème de conception de ta base de données ou de ton application PHP qui la modifie.
Merci encore a toi,
Ce n' est pas pour me justifier, mais je reprend un gros projet, et je récupéres toutes les anciennes tables, c' est pour cela, que les rationalisant, j'ais de nombreux outils a faire pour transcrire ... :oops:

En fait j'emploies souvent ces formes ... qu' en penses tu ? :shock:

Code : Tout sélectionner

<HTML><BODY> <?PHP $Flag1=mysql_connect($Serveur,$User,$Mdp); $Flag2=mysql_select_db($MaBase); $result=mysql_query( "UPDATE fomessages SET MsgTexte=REPLACE(`MsgTexte`,'ddd','ffff'), MsgTexte=REPLACE(`MsgTexte`,'lo','la'), MsgTexte=REPLACE(`MsgTexte`,'</a>','</b>'), MsgTexte=REPLACE(`MsgTexte`,'xxx">','yyyy') "); mysql_close(); ?> </BODY></HTML>
J' ais une question au passage qui n'a rien a voir, pourquoi je n'arrives pas a me mettre un avatard :shock:

par Ripat » 02 févr. 2009, 13:56

Les fonctions MySQL te permettent effectivement de faire un certain nombre de choses hors PHP mais si tu dois régulièrement modifier l'ensemble d'une table, il y a sans doute un problème de conception de ta base de données ou de ton application PHP qui la modifie.

par christele » 02 févr. 2009, 11:12

Mille mercis a toi, c' est trop génial,

Je voudrais te poser une question, a ce sujet, pour étre plus general, quand je parcour toute une table avec une action a réaliser par exemple incrementer une valeur compteur ??
Est-ce que c' est le mêm genre de formulation :shock:

En attendant mille mercis a toi :D

par Ripat » 02 févr. 2009, 11:00

Le plus simple est d'utiliser les fonctions STRING de MySQL pour faire le changement en une seule requête.

Code : Tout sélectionner

UPDATE `foAva` SET `AvaTexte` = REPLACE(`AvaTexte`, 'Académie','Organisation');
http://dev.mysql.com/doc/refman/5.0/en/ ... on_replace

Avant de faire l'update, vérifie si tu as le résultat attendu avec un:

Code : Tout sélectionner

SELECT REPLACE(`AvaTexte`, 'Académie','Organisation') FROM `foAva`;

MYSQL Mise a jour de toute une table

par christele » 02 févr. 2009, 10:40

Bonjour,

J'ais une simple table dont voici la structure

Code : Tout sélectionner

// NOM `foAva` CREATE TABLE IF NOT EXISTS `foAva` ( `AvaIndex` mediumint(8) unsigned NOT NULL auto_increment, `AvaBloque` varchar(4) NOT NULL default ' ', `AvaTexte` varchar(120) NOT NULL default ' ', PRIMARY KEY (`AvatIndex`), UNIQUE KEY `AvaTexte` (`AvaTexte`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1887 ;
Sur cette table pour tout les enregistrements
Il me faut lire en particulier AvaTexte Lui faire un petit
$AvaTexte= stripslashes($row['AvaTexte']);
Puis important
$AvaTexte= str_replace("Académie","Organisation",$AvaTexte);
et réécrire ce $AvaTexte Voila je ne sais pas quelle est la meilleure syntaxe pour cela,
malgrés mes recherches :shock: