Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[Résolu] Problème d'accent lorsque j'utilise une fonction « {php}incl
#1
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: #1.11.2
#~ Url du site : http://www.19etrou.ca/dev/index.php?page...t-gaspesie
#~ Hébergeur / Soft : iSream (Montréal, Québec)
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 1.11.2
#~ Installed Modules:
#~ CMSMailer: 5.2.1
#~ CMSPrinting: 1.0.3
#~ FileManager: 1.4.1
#~ MenuManager: 1.8.4
#~ MicroTiny: 1.2.3
#~ ModuleManager: 1.5.5
#~ News: 2.12.9
#~ Search: 1.7.7
#~ ThemeManager: 1.1.7
#~ Config Information:
#~ php_memory_limit:
#~ process_whole_template:
#~ output_compression:
#~ max_upload_size: 128000000
#~ url_rewriting: none
#~ page_extension:
#~ query_var: page
#~ image_manipulation_prog: GD
#~ auto_alias_content: true
#~ locale:
#~ default_encoding: utf-8
#~ admin_encoding: utf-8
#~ set_names: true
#~ Php Information:
#~ phpversion: 5.3.3
#~ md5_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_STRICT: 0
#~ E_DEPRECATED: 8192
#~ memory_limit: 128M
#~ max_execution_time: 60
#~ output_buffering: 4096
#~ safe_mode: On (Vrai)
#~ file_uploads: On (Vrai)
#~ post_max_size: 8M
#~ upload_max_filesize: 128M
#~ session_save_path: Aucune vérification à cause de la restriction spécifiée par PHP open_basedir
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ xmlreader_class: On (Vrai)
#~ Server Information:
#~ Server Api: apache2handler
#~ Server Db Type: MySQL (mysqli)
#~ Server Db Version: 5.0.95
#~ Server Db Grants: Trouvé un privilège "GRANT ALL" qui semble être adapté
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~



Problème d'accent lorsque j'utilise une fonction « {php}include' xxxxxxx.php';{/php}»

Tous les accents sont remplacés par des caractères : Le club de golf de Rivi?re H?t?e

J'ai tenté d'ajouté : <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> dans ma page, sans succès.
#2
Salut,

Comment appelles-tu cette fonction ? Je suppose qu'elle te renvoie du texte ?

As-tu essayé de convertir ce contenu UTF8 directement ? Avec utf8_encode par exemple ?

Ta fonction est-elle une fonction de ton cru ? Sinon tu peux peut-être passer par une balise utilisateur.
www.web-ep.be - Développeur Web Freelance - Développeur/Intégrateur CMS Made Simple (création de sites, développement de modules/plugins/templates sur mesure), spécialisé dans les sites pour l'immobilier.
#3
{php} est à exclure de ton code, c'est pas propre Wink

fait comme heriquet te le conseil : colle ton code dans une udt, c'est propre et le code sera dans le même encodage que cmsmadesimple, te corrigeant sans aucun doute ton problème au passage.
#4
Avec une vielle version CMS Made Simple (1.6.8)

J'avais créé un contenu (page) et dans celui-ci je collais l'information suivante : {php}include' xxxxxxx.php';{/php}.


xxxxxxx.php est une page qui fait une requête dans une base de donnée. Cette requête me permettais de lister le contenu de ma table selon une requête.

Ça fonctionnait bien.
#5
Ok ! Je ne sais pas te dire pourquoi ca ne fonctionne plus à présent, mais si tu crées une balise utilisateur, tu bénéficies de l'API de CMSMS, donc aussi des connections DB à la DB de ton instance de CMSMS, etc.
www.web-ep.be - Développeur Web Freelance - Développeur/Intégrateur CMS Made Simple (création de sites, développement de modules/plugins/templates sur mesure), spécialisé dans les sites pour l'immobilier.
#6
J'avoue qu'avec les balises je ne suis pas un expert, mais j'ai quand même créé quelque chose pour me connecter à ma BD et avec une requête sql.

J'obtiens quelque chose, mais j'ai toujours mon problème d'accent...
#7
Tu as essayé d'utiliser la fonction utf8_encode ?
www.web-ep.be - Développeur Web Freelance - Développeur/Intégrateur CMS Made Simple (création de sites, développement de modules/plugins/templates sur mesure), spécialisé dans les sites pour l'immobilier.
#8
Citation :Tu as essayé d'utiliser la fonction utf8_encode ?

Dans mon gabarit de page, j'ai changé mon <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
pour : charset=utf8_encode.


J'ai aussi fait un test, j'ai fait affiché ma page sans passer par CMSMadeSimple... et elle s'affiche correctement.
#9
Pour ton charset, ce n'est pas correct.

Dans le template par défaut, il y a ceci :

Code :
[== XHTML ==]

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Il ne faut a priori pas y toucher.

Serait-tu d'accord de m'envoyer le contenu de ton UDT (la balise utilisateur) par mail afin que je tente de voir ce qui se cache derrière ton problème ? Si tu ne la trouve pas, envois-moi un message privé. Sauf si tu es d'accord de copier ton code (en masquant les logins et pass) dans cette page de forum.
www.web-ep.be - Développeur Web Freelance - Développeur/Intégrateur CMS Made Simple (création de sites, développement de modules/plugins/templates sur mesure), spécialisé dans les sites pour l'immobilier.
#10
La bd est en quel encodage ? Je suppose que si tu as des problèmes d'affichage des accents tu n'est pas en utf8_general_ci.
Ajoute au code de connexion à la bd : $bd->query("SET NAMES 'utf8'");

La meta content-type est souvent écrasée par l'entête http, tu peux vérifier l'entête avec firebug.
Si le set names ne fonctionne pas, essaye en ajoutant "AddDefaultCharset utf-8" dans ton .htaccess.
#11
Comme suggéré j'ai créé une balise utilisateur (UDT). Ça réglé mon problème d'accent

N'étant pas expert, j'ai réussi avec l'aide de heriquet à mettre quelque chose en place...

Voici la solution :

$db = cmsms()->GetDb();

$sql = 'SELECT * FROM MATABLE WHERE `CHAMPS1` = ? ORDER BY `CHAMPS2`';

$dbresult =$db->Execute($sql, array($params['CHAMPS1']));
echo $params['CHAMPS1'];
$liste='<ul>';

while ($dbresult && $row = $dbresult->FetchRow())
{
$liste.='<li><a
......................

}
$liste .= '</ul>';

echo $liste;


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)