1. IMPORTANT : Nouvelles mesures de sécurité - 2. Règles pour obtenir de l'aide dans les forums de support - 3. Restrictions des droits pour le groupe "Support suspendu"

Il est obligatoire de respecter les Règles de MyBB.fr : Version abrégée ou Version complète pour obtenir du support sur nos forums.

Les membres ayant un site/forum contrevenant aux règles de MyBB.support seront placés dans le groupe "Support suspendu" et ne bénéficieront plus du support du staff. Nous recommandons aux autres membres d'agir de même. Il ne s'agit pas d'un bannissement, le membre retrouvera son statut "normal" dès que sa situation sera conforme aux règles.

Nouveau : un Wiki en français : plus de détails.
Avant de soumettre votre problème, consultez-le, ainsi que la FAQ, sans oublier le moteur de recherche interne.


Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Problème DB encodage ?
Mots-clés » problème, encodage
05-05-2013, 19:30,
#1
Problème DB encodage ?

Salut à tous,

lors de l'installationd e Mybb j'ai cette erreur je epsne ça vient de l'encodage de ma DB qui est en UTF 8 (postgresql)

Citation :MyBB SQL Error

MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
42601 - ERREUR: erreur de syntaxe sur ou près de « utilisateur » LINE 1: ...d, disporder) VALUES (1, 1, 'Enregistrement de l\'utilisateu... ^
Query:
INSERT INTO mybb_helpdocs (hid, sid, name, description, document, usetranslation, enabled, disporder) VALUES (1, 1, 'Enregistrement de l\'utilisateur', 'Avantages et privilèges de l\'enregistrement.', 'Quelques parties de ce forum peuvent demander une inscription, et de vous connecter. L\'enregistrement est gratuit et prend seulement quelques minutes.

Vous êtes encouragé à vous enregistrer ; une fois enregistré, vous pourrez poster des messages, définir vos préférences, et mettre à jour votre profil.

Les éléments qui demandent un enregistrement sont les abonnements, la gestion des favoris, le changement de style et de thème, l\'accès au bloc-notes personnel et le contact par mail des membres du forum.', 1, 1, 1);
Répondre
05-05-2013, 19:59,
#2
RE: Problème DB encodage ?
Bizarre cette erreur, c'est la première fois qu'elle est signalée.

J'imagine qu'il y a un problème avec les apostrophes "échappées" ?
Mais je ne saurais dire pourquoi.

Que ta BD soit en utf-8, c'est très normal. A mon avis ça n'a rien à voir avec le problème.
Peut-être est-ce lié au moteur postgresql ?... Peut-être y a-t-il un paramètre quelconque dans php.ini à activer/désactiver ?

N'étant pas un spécialiste de PostgreSQL (ni de SQL en général) je vais laisser à exdiogene le soin de donner une explication.

Toutefois je te signale cette info glanée après une petite recherche Google :
http://www.postgresql.org/docs/current/interactive/runtime-config-compatible.html#GUC-STANDARD-CONFORMING-STRINGS

Notamment ce paragraphe :
Code :
standard_conforming_strings (boolean)

    This controls whether ordinary string literals ('...') treat backslashes literally, as specified in the SQL standard. Beginning in PostgreSQL 9.1, the default is on (prior releases defaulted to off). Applications can check this parameter to determine how string literals will be processed. The presence of this parameter can also be taken as an indication that the escape string syntax (E'...') is supported. Escape string syntax (Section 4.1.2.2) should be used if an application desires backslashes to be treated as escape characters.

C'est peut-être un début de piste ?



[Image: spyto.png]
~~ AUCUNE AIDE Par MP, MAIL OU MSN !!!~~
Répondre
05-05-2013, 21:23,
#3
RE: Problème DB encodage ?
Merci pour ta réponse rapide j'ai donc regardé du coté de la conf de postgresql.

j'ai ces options je vais essayer de les modifier.

#array_nulls = on
#backslash_quote = safe_encoding # on, off, or safe_encoding
#default_with_oids = off
#escape_string_warning = on
#lo_compat_privileges = off
#quote_all_identifiers = off
#sql_inheritance = on
#standard_conforming_strings = on
#synchronize_seqscans = on
Répondre
05-05-2013, 22:35,
#4
RE: Problème DB encodage ?
Celui que j'essaierais en premier c'est :
#backslash_quote : accepte ou pas l’échappement de l'apostrophe "\'".
on = accepte toujours
safe_encoding = permettre seulement si le codage du client n'autorise pas l'ASCII \ dans un caractère multi-octets
off = rejette toujours
cf : http://www.postgresql.org/docs/9.1/static/runtime-config-compatible.html
Essaie de mettre à on.

Ces deux autres options, je ne sais pas trop...

#standard_conforming_strings = off ?...

#escape_string_warning = warn about backslashes in ordinary (non-E) strings

[Image: spyto.png]
~~ AUCUNE AIDE Par MP, MAIL OU MSN !!!~~
Répondre
06-05-2013, 0:46, (Modification du message : 06-05-2013, 0:47 par andro2014.)
#5
RE: Problème DB encodage ?
J'ai testé les 3 combinaisons pour backslash_quote ça a pas marché.

Je vais essayer le reste , et chercher ...

Je reviendrai ici vers le milieu de la semaine.

Merci.
Répondre
08-05-2013, 14:23,
#6
RE: Problème DB encodage ?
D'après mes tests ça vient bien des "\" donc comment faire je suis désespéré personne utilise postgresql UTF8 ?

j'ai essayé de modifier les options mais ça n'a rien donné.
Répondre
08-05-2013, 15:16, (Modification du message : 08-05-2013, 18:27 par spyto.)
#7
RE: Problème DB encodage ?
Même avec "standard_conforming_strings" à Off ???

C'est quand même curieux qu'on ne puisse faire accepter \' à postgresql !

Sinon, il faudrait dans tous le fichiers remplacer l'apostrophe échappée (\') par un guillemet simple répété deux fois ('') ce qui 'est pas une mince affaire.

[Image: spyto.png]
~~ AUCUNE AIDE Par MP, MAIL OU MSN !!!~~
Répondre
08-05-2013, 18:19,
#8
RE: Problème DB encodage ?
J'ai essayé avec "standard_conforming_strings" à Off ça a pas marché :-'(
Répondre
08-05-2013, 18:31,
#9
RE: Problème DB encodage ?
C'est une installation en local ou en ligne.
Si local, sous quel environnement ? (XAMPP etc)
Si c'est en ligne, serveur gratuit, payant, dédié ?...


[Image: spyto.png]
~~ AUCUNE AIDE Par MP, MAIL OU MSN !!!~~
Répondre
08-05-2013, 18:40, (Modification du message : 08-05-2013, 19:07 par andro2014.)
#10
RE: Problème DB encodage ?
Installation sur serveur dédié (en ligne). (Debian 7 + APACHE2 + postgresql 9.1 + php 5.4 )
du coup j'ai fait comme tu as dit remplacer les '\ par des ''

maintenant j'ai cette erreur:

MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
22021 - ERREUR: séquence d'octets invalide pour l'encodage « UTF8 » : 0xe92047
Query:
INSERT INTO mybb_attachtypes (atid, name, mimetype, extension, maxsize, icon) VALUES (12, 'Fichier compress� GZIP', 'application/x-gzip', 'gz', 1024, 'images/attachtypes/tar.gif');
j'ai resolu cette erreur en encodant en UTF8 au lieu de UTF8 sans boom le fichier
du coup c'est bon maintenant mais es ce que j'aurai des problèmes plus tard ? a cause des \
Mince j'ai une nouvelle erreur une fois l'installation faite j'ai installé un template et j'ai voulu le supprimer j'ai eu cette erreur la


MyBB SQL Error

MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
22P02 - ERREUR: syntaxe en entrée invalide pour l'entier : « » LINE 3: SET pid='2' WHERE tid='' ^
Query:
UPDATE mybb_themes SET pid='2' WHERE tid=''

Please contact the MyBB Group for support.
Répondre
08-05-2013, 20:02,
#11
RE: Problème DB encodage ?
C'est vraiment galère ton truc !!!

C'est le monde à l'envers : tous les fichiers sont normalement encodés en UTF-8 sans BOM, c'est ce qui est recommandé, sino à bugue !
Et toi, c'est l'inverse !?

Normalement sur un dédié, tu peux tout paramétrer à ta guise.
Même si je te comprends, il aurait été préférable de faire "digérer" les \' à postgresql que d'adapter les fichiers pour qu'il les digère.

Je crains que le problème ne se repose à chaque nouvelle installation.

Par contre pour le template, je ne saurais dire...

Personnellement je ne connais pas du tout postgresql.

Je pense que ça vaudrait le coup que tu exposes ton problème sur MyBB.com, afin que les développeurs sachent qu'il y a tous ces bugs avec postgresql !

Si tu as la possibilité de l’installer plutôt sur un moteur MySQL, ce serait plus sûr et plus garant d'un fonctionnement correct.
A mon humble avis, les développeurs ont certainement davantage travaillé et testé leur code pour MySQL que pour PostgreSQL, d'où les bugs.

[Image: spyto.png]
~~ AUCUNE AIDE Par MP, MAIL OU MSN !!!~~
Répondre
08-05-2013, 20:23,
#12
RE: Problème DB encodage ?
Voici la position du support technique de MyBB.com en 2011 pour les Bases PostGreSql :
Citation : 10-01-2011, 03:47 PM
Dylan M. Support Technician
RE: SMALLINT(1) incompatibile with PostgreSQL
Currently our PostgreSQL support is considered... I guess beta. I know it isn't considered as functional for day to day usage.

De plus les Bases PostGreSql n'ont pas les mêmes caractéristiques pour les TINYINT et les SMALLINT() ce qui cause des ennuis avec MyBB et ses plugins.

Administrateur de MyBBCodes.com
Cool " Ce n'est pas ce que vous savez qui est important, c'est ce que vous faites ou ne faites pas!"
Obtenez plus de 175 plugins pour MyBB ici...
~~ AUCUNE AIDE Par MP, MAIL OU MSN !!!~~
Répondre




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

Contact | MyBB.support | Retourner en haut | Retourner au contenu | Version bas-débit (Archivé) | Syndication RSS
 Utilitaire de traduction fourni par Regentronique