Vous n'êtes pas identifié(e).
UTF-8 : quelle belle idée d'avoir ajouté le choix du jeu de caractères à la configuration
Quand un site est en ISO-8859 et qu'on veut le convertir en utf-8, il y a plusieurs choses à faire ...
1) prendre tous les fichiers qui contiennent des textes qui s'affichent) (ini, txt, ...) , les ouvrir avec pspad, modifier le codage de ANSI (Windows) en UTF-8, et les sauvegarder !
2) prendre tous les fichiers sérialisés (dta) et les passer par la moulinette dont le code est plus bas !
3) modifier le code des modules pour cesser de forcer en ISO mais utiliser le codage défini dans la config. En clair, :
remplacer "iso-8859-15" par self::$cms->config['site_charset']
Le problème est que si on se contente de ces modifications, le module n'est plus compatible 0.9.4, d'ou ma question :
y-a-t-il un moyen de savoir si la variable de config "site-charset" existe ou pas ?
Si j'en oublie ... n'hésitez pas, je suis en plein dedans !
PYDou
===============moulinette pour les fichiers sérialisés *.dta =================
<?php
//
// appeler ce programme avec le paramètre : ?file=[fichier sérialisé à convertir d'iso-8859-15 en utf-8]
// mettre la ligne 10 en commentaires si le codage ne s'applique pas aux clefs
//
header('content-type: text/html; charset: utf-8');
function utf8_string_array_encode(&$array){
$func = function(&$value,&$key){
if(is_string($value)) $value = iconv("iso-8859-15","utf-8",$value);
if(is_string($key)) $key = iconv("iso-8859-15","utf-8",$key);
if(is_array($value)) utf8_string_array_encode($value);
};
array_walk($array,$func);
return $array;
}
$filfich=$_GET["file"];
$f_fich = file_exists($filfich)?(array)unserialize(@file_get_contents($filfich)):array();
$f_fich=utf8_string_array_encode($f_fich);
file_put_contents($filfich, serialize($f_fich), LOCK_EX);
?>
Consultant en sécurité informatique (ISO 27001 Lead Auditor, ISO 27005 Risk Manager)
Amateur de JAZZ, Voile, Bridge
Hors ligne
Sans bug, c'est mieux.
PYDou
=================================================
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
</body>
<?php
/*
////////////////////////////////////////////////////////////////////////////////////////
Programme utf8.php
Ce programme convetit les sites iso-8859-1 en sites utf-8 .
Il ne fait pas tout, en particulier, il faut remplacer dans les modules de la version 0.9.5b3
toutes les lignes de code
html_entity_decode($quoi,ENT_HTML401,"iso_8859-15");
par
html_entity_decode($quoi,ENT_HTML401,self::$cms->config['site_charset']);
Mode opératoire:
Appeler le programme avec comme paramètre le répertoire de départ: utf8.php?dir=<répertoire>
Pour démarer sur le répertoire courant : utf8.php?dir=.
Il traite tous les fichiers à modifier récursivement dans les répoertoires
Les fichiers textes iso-8859 (.txt , .ini , .opt , .php) sont convertis en utf-8 par la fonction IMOV de linux (en shell)
Les fichiers sérialisés (.dta) le sont egalement, champ par champ pour ne pas les corrompre
Il est bien sur évident qu'avant ou après transformation des fichiers, il faut basculer en mode UTF-8 dans la configuration de ZITE+
ATTENTION : ne pas utiliser 2 fois le programme dans le même répertoire !!!
////////////////////////////////////////////////////////////////////////////////////////
/**/
function utf8_serialize_encode($serial) {
foreach ($serial as $key => $val){
$newkey=$key;
$newval=$val;
if(is_string($key)) $newkey = iconv("iso-8859-15", "UTF-8", $key);
if(is_string($val)) $newval = iconv("iso-8859-15", "UTF-8", $val);
if(is_array($val)) $newval = utf8_serialize_encode($val);
unset($serial[$key]);
$serial[$newkey]=$newval;
}
return $serial;
}
/**/
function list_dir($name) {
if ($dir = opendir($name)) {
while($file = readdir($dir)) {
/**/
if(is_dir("$name/$file") && !in_array($file, array(".",".."))) {
echo "=========== Repertoire : $name/$file<br>\n";
list_dir("$name/$file");
}
/**/
else {
$typconv=substr(strtolower($file),-4);
//////////////////// conversion par shell
switch ($typconv) {
case ".php" :
case ".txt" :
case ".ini" :
case ".opt" :
$filcod=shell_exec("file -bi $name/$file");
$codage=trim(strtolower(substr($filcod,strpos($filcod,"=")+1,255)));
$codiso=(substr($codage,0,8));
echo "Fichier : $name/$file : codage $codage ";
if ($codiso=="iso-8859") {
echo " : iconv -f $codage $name/$file -t utf-8 -o xxx.xxx";
$copp= shell_exec("iconv -f $codage $name/$file -t utf-8 -o xxx.xxx"); echo $copp;
$copp= shell_exec("cp xxx.xxx $name/$file "); echo $copp;
unlink("xxx.xxx");
}
echo "<br>\n";
break;
//////////////////// conversion de type serialize
case ".dta" :
$filfich=__DIR__."/$name/$file";
echo "Fichier : $filfich : conversion de type SERIALIZE <br>\n";
$f_fich = unserialize(@file_get_contents($filfich));
$f_fich=utf8_serialize_encode($f_fich);
file_put_contents($filfich, serialize($f_fich), LOCK_EX);
break;
}
}
/**/
}
closedir($dir);
}
}
/**/
list_dir($_GET['dir']);
?>
</body>
Dernière modification par pydou (30/01/2017 11:08:51)
Consultant en sécurité informatique (ISO 27001 Lead Auditor, ISO 27005 Risk Manager)
Amateur de JAZZ, Voile, Bridge
Hors ligne
Pour info j'ai démarré un nouveau site : en V9.5 + PHP7 ==> aucun message d'erreur ni avertissement à signaler...
Stéphane
Webdesign AvantageWeb
Hors ligne
Bonsoir,
- Les (petites) images insérées par TinyMce s'affichent à 100% de la largeur de la page !
- - - -> exemple : http://www.menuiserie-lechat.com/1151951292.html
j'ai trouvé le bug: c'est corrigé
- Idem que l'an passé .... https://ziteplus.giausserand.fr/forum/v … hp?id=1494 ...
Le bug des guillemets et la "Gestion des droits" du webmaster qui ne lui est pas attribué.
voir exemple test3 & Page "news" sur l'exemple
Le bug des guillements est corrigé dans l'édition des pages
le zip de la 0.9.5.b5 va bientôt être disponible.
a+
jean-Paul
Dernière modification par jpg (05/03/2017 00:13:38)
Hors ligne
Bonsoir à tous.
la nouvelle (et dernière ?) beta de la version 0.9.5 est disponible sur le site officiel
a+
Jean-Paul
Hors ligne
bah flute fdiapo marche po j'ai plus le niveau pour mettre à jours
un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/
Hors ligne
Nouvelle beta ce soir ou demain.
a+
Jean-Paul
Hors ligne
La dernière beta est dispo: la 0.9.5.b6
J'ai modifié le module zdiaporama pour le rendre compatible avec cette version de Ziteplus ... et les suivantes
@snypi: les modifs ne doivent pas être très différentes pour fdiapo
Si pas d'erreur, je mets la version en prod cette semaine.
Bon test,
Jean-Paul
Hors ligne
salut JPG on ne peut metre d'accent sur le titre du site ni sur le sous titre du site
et lorsque l'on modifie haut ou bas le code php s'efface !
un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/
Hors ligne
salut JPG on ne peut metre d'accent sur le titre du site ni sur le sous titre du site
et lorsque l'on modifie haut ou bas le code php s'efface !
C'est marrant, ça arrive uniquement lorsque le charset n'est pas en utf-8 dans la config
Il va donc y avoir une prochaine beta
a+
Jean-Paul
Hors ligne
Normalement c'est réglé: nouvelle 0.9.5.b7
Hors ligne
piti bug version b7 et précédente
sur une page en mode source on met un
[== HTML ==]
<marquee direction="left" scrollamount="2"><p><span style="line-height: 1.5em;"><a style="line-height: 1.5em; color: #96bf0d;" href="sejours_golf_stage_golf_maroc.html">Notre prochain séjour : Falgos, Pyrénées Orientales du samedi 10 au samedi 17 juin 2017</a></span></p></marquee>
et lorsque l'on édite on ne voit plus le contenue de la page !
un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/
Hors ligne
piti bug version b7 et précédente
sur une page en mode source on met un[== HTML ==] <marquee direction="left" scrollamount="2"><p><span style="line-height: 1.5em;"><a style="line-height: 1.5em; color: #96bf0d;" href="sejours_golf_stage_golf_maroc.html">Notre prochain séjour : Falgos, Pyrénées Orientales du samedi 10 au samedi 17 juin 2017</a></span></p></marquee>
et lorsque l'on édite on ne voit plus le contenue de la page !
Ce n'est pas un bug: c'est ton code HTML qui est incorrect.
Il faut impérativement encoder les caractères accentués
"Pyrénées" devient ainsi: "Pyrénées" et "séjour" devient "séjour"
a+
Jean-Paul
Hors ligne
salut les retours de bug sur b5
exemple du top avec une image dans le h1 lorsque l'on clique sur le top et que l'on insère une image std
[== HTML ==]
<h1><span style="display: none;"><img style=";max-width: 938px; max-height: 229px;" title="1455169805" src="view.php/1455169805.jpg" alt="1455169805" width="100%" height="100%" /><img style=";max-width: 938px; max-height: 229px;" title="1455169805" src="view.php/1455169805.jpg" alt="1455169805" width="100%" height="100%" />zp</span><?php echo $zite->get_data('site_title') ?></h1>
<h2><?php echo $zite->get_data('site_subtitle') ?></h2>
un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/
Hors ligne
salut les retours de bug sur b5
exemple du top avec une image dans le h1 lorsque l'on clique sur le top et que l'on insère une image std[== HTML ==] <h1><span style="display: none;"><img style=";max-width: 938px; max-height: 229px;" title="1455169805" src="view.php/1455169805.jpg" alt="1455169805" width="100%" height="100%" /><img style=";max-width: 938px; max-height: 229px;" title="1455169805" src="view.php/1455169805.jpg" alt="1455169805" width="100%" height="100%" />zp</span><?php echo $zite->get_data('site_title') ?></h1> <h2><?php echo $zite->get_data('site_subtitle') ?></h2>
Je ne vois pas d'anomalie. Il affiche correctement le titre et le sous titre su site.
L'image n'étant pas affichée à cause de l'attribut "display:none", ce qui est normal.
Tu peux me montrer le problème sur un site ?
a+
Jean-Paul
Hors ligne
Je ne peut te montré je suis sous wampserver en php7
ce qui ce passe c'est que lorsque un utilisateur novice veut mettre une image dans le top !
dans "haut" on arrive dans l'éditeur ( tinymce) là pas de curseur, puis on fait un clic droit (inséré une image) on insère une l'image
l'image n'apparait pas et on enregistre quand même parceque l'on est novice !
les bugs je les testes en me positionnant comme un néophyte
ps je fait un test sur alwaysdata et te tien au courant
un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/
Hors ligne
mince cela ne fonctionne pas sur alwaysdata (par contre les codes php s’efface d'office
un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/
Hors ligne
Bon, je crois que j'ai compris, vu que j'ai réussi à reproduire la manière dont tu as obtenu le <span style="display: none;">
Après quelques tests, Tinymce insère ce <span> quand il y a un code PHP en tête de page (que la page soit PHP ou pas d'ailleurs)
Par exemple, si on met un <p> </p> en tête de page on retrouve le comportement normal.
Je ne vois pas trop ce qu'on peut faire pour empêcher tinyMCE de faire ça
Enfin si: ne pas éditer avec tinymce une page commençant par du code PHP
a+
Jean-Paul
Hors ligne
salutation
module contact (b5)
chez alwaysdata en php 7.1 une erreur qui n'envoie pas de mail
[== Indéfini ==]
Fatal error: Uncaught Error: Call to undefined function eregi() in /home/dejeps2017/www/zplus/module/contact.php:61 Stack trace: #0 /home/dejeps2017/www/zplus/module/contact.php(75): verification_email('g.montaigu@gmai...') #1 /home/dejeps2017/www/zplus/tmodule.php(90): Tcontact->dojob('') #2 /home/dejeps2017/www/zplus/ziteplus.php(455): Tmodule::execute_module('contact', Object(Tcontact), 'dojob', '') #3 /home/dejeps2017/www/zdata/1151951287.txt(2): zite->page_module('contact.php') #4 /home/dejeps2017/www/zplus/ziteplus.php(393): include('/home/dejeps201...') #5 /home/dejeps2017/www/zplus/ziteplus.php(225): zite->get_content('1151951287', true, true) #6 /home/dejeps2017/www/index.php(6): zite->builder() #7 {main} thrown in /home/dejeps2017/www/zplus/module/contact.php on line 61
un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/
Hors ligne
Bien vu
Il y aura une autre version béta.
Hors ligne
En fait, pas besoin de nouvelle béta vu que le module n'est pas fourni en base, donc on reste sur la version 0.9.5.b7 pour la version de test de Ziteplus en cours
Concernant l'erreur sur le module Contact, J'ai mis en ligne la version 1.4 qui corrige ce problème, profite aussi de la correction des caractères accentués et de la traduction en 4 langues.
Et merci pour ces tests détaillés de la nouvelle version
a+
Jean-Paul
Hors ligne
salut jpg
j'ai l'impression que depuis le changement de php avec la 0.9.4 et la 0.9.5 la création automatique d'utilisateur ne fonctionne plus ! en tous cas je n'y arrive pas
++
un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/
Hors ligne
Tu peux préciser le problème rencontré: est-ce le mail qui n'arrive pas ? Chez Free ?
Hors ligne
chez 1&1 je vient de le passé en 0.9.5 opération réussi mais cela ne change pas le problème et cela ne fontionnait pas non plus en 0.9.4 depuis le changement de php.
Bonjour
Vous venez de crer un compte et il faut maintenant l'activer. (un second mail vous sera envoyer avec votre mot de passe).
Collez ce lien dans votre navigateur pour activer votre compte: "http://www.sejour-stage-golf-julien.fr/ … zcuERzLGMK"
c'est pour le livre d'or (détournement du module commentaire)
on arrvie pas a activé et à recevoir le mail avec mot de passe
tu peut essayé sur ce site je l'admin
un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/
Hors ligne
chez 1&1 je vient de le passé en 0.9.5 opération réussi mais cela ne change pas le problème et cela ne fontionnait pas non plus en 0.9.4 depuis le changement de php.
message a écrit :Bonjour
Vous venez de crer un compte et il faut maintenant l'activer. (un second mail vous sera envoyer avec votre mot de passe).
Collez ce lien dans votre navigateur pour activer votre compte: "http://www.sejour-stage-golf-julien.fr/ … zcuERzLGMK"c'est pour le livre d'or (détournement du module commentaire)
on arrvie pas a activé et à recevoir le mail avec mot de passetu peut essayé sur ce site je l'admin
Je viens d'essayer sur ton site, on reçoit le premier mail, mais effectivement, on ne peut pas l'activer.
Est-ce que tu as des messages d'erreur dans tes logs ou à la racine du site ?
Je ferai un test sur un de mes sites en ligne dès que possible.
a+
Jean-Paul
Hors ligne