Bonjour,

J'ai dans une base mysql des données qui contiennent des espaces en début de chaîne. J'ai donc tenté un :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
UPDATE `ma_table`
SET `champ_a_corr`= TRIM(`champ_a_corr`)
Mais ça n'a pas marché

J'ai essayé avec une fonction PHP :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$TxtReq = "SELECT `id`, `champ_a_corr`
  FROM `ma_table`
";
$res_req = mysql_query($TxtReq);
while(list($id, $nom) = mysql_fetch_row($res_req)) {
  $TxtReq2 = "UPDATE `ma_table`
    SET `champ_a_corr` = '" . trim($nom) . "'
    WHERE `id` = $id
  ";
  $res_req2 = mysql_query($TxtReq2);
}
?>
Je précise que j'ai vérifié que les espaces n'étaient pas des caractères d'affichage d'espace (comme &nbsp; par ex.), que la collation est en latin1_swedish_ci, et que j'ai essayé de la passer aussi en UTF8, mais que ça ne change rien, et enfin qu'un traitement manuel champ par champ avec phpmyadmin marche.

Je bloque vraiment, je ne comprends pas ce qui ne va pas (et pourtant je me débrouille bien d'habitude à la fois en PHP et en MySql)

Merci à vous pour vos idées