Bonjour à tous,
j'ai un petit souci et j'aimerai votre aide
Au moment d'insérer des données dans ma base mysql, j'obtiens un
message d'erreur
Mysql::Error: #HY000Incorrect string value: '\xE9_547B...' for column
'filename' at row 1: INSERT INTO `pages` (`rel_path`, `filename`)
VALUES('Bilbliotheque%2Fworkproducts%2Fproduit_install
%E9_547BA611.html', 'produit_installé_547BA611.html')
Le problème semble venir des accents.
Précédemment, j'avais le même souci avec le rel_path que je pense
avoir résolu grâce à la méthode CGI.escape.
Seulement je ne trouve pas où utiliser cette méthode pour le filename
si vous avez une idée
Voici le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 def scan4content logger.info("Scanning content in site #{self.title}") self.pages = [] if self.content_scanned_on.nil? files = self.files_wikifiable self.wikifiable_files_count = files.size # TODO obsolete? files.each do |f| page = BaselineProcessPage.new(:rel_path => CGI.escape(f.gsub (self.path + '/', '')), :site => self, :tool => 'EPFC', :status => 'N.A.') self.pages << page end self.content_scanned_on = Time.now self.save! else logger.info("Content has already been scanned!") end end
Partager