Bonjour,
J’ai installé opencourrier 4.1.1. Le logiciel correspond tout à fait aux besoins d’une petite administration belge. Tout a l’air de fonctionner sauf les recherches dans les courriers entrants et dans les courriers sortants.
Voici le message d’erreur obtenu :
Erreur de base de donnees. Contactez votre administrateur
Voici les détails :
/opencourrier-4.1.1/scr/tab.php?validation=0&obj=courrier_arrivee&premier=0&recherche=&selectioncol=&tricol=&advs_id=&valide=&style=tab&onglet=&
0.000 : class utils - __construct() VERBOSE
1.079 : class utils - retrieveUserProfile(): db->query(" SELECT * FROM opencourrier.om_utilisateur left join opencourrier.om_collectivite on om_collectivite.om_collectivite = om_utilisateur.om_collectivite left join opencourrier.om_profil on om_utilisateur.om_profil = om_profil.om_profil WHERE om_utilisateur.login = ‘SR_PRIVE’;"); VERBOSE
1.080 : class utils - getAllRights(): db->query("select om_droit.om_droit as table_om_droit_field_id, om_profil.om_profil as table_om_profil_field_id, om_droit.libelle as table_om_droit_field_libelle, om_profil.libelle as table_om_profil_field_libelle, om_profil.hierarchie as table_om_profil_field_hierarchie from opencourrier.om_droit left join opencourrier.om_profil on om_droit.om_profil=om_profil.om_profil "); VERBOSE
1.082 : class utils - getCollectivite(): db->query(“select * from opencourrier.om_parametre where om_collectivite=1”); VERBOSE
1.084 : class utils - get_service_code() : db->getOne(“SELECT code FROM opencourrier.service WHERE service = 20”) VERBOSE
1.086 : class utils - get_service_code() : db->getOne(“SELECT code FROM opencourrier.service WHERE service = 20”) VERBOSE
1.087 : class utils - get_service_code() : db->getOne(“SELECT code FROM opencourrier.service WHERE service = 20”) VERBOSE
1.091 : class om_table - __construct() VERBOSE
1.091 : class om_table - display(): db->getone(“select count(*) from opencourrier.courrier LEFT JOIN opencourrier.categorie_courrier ON courrier.categorie_courrier=categorie_courrier.categorie_courrier LEFT JOIN opencourrier.civilite ON courrier.civilite=civilite.civilite LEFT JOIN opencourrier.emetteur ON courrier.emetteur=emetteur.emetteur LEFT JOIN opencourrier.service ON courrier.traitement=service.service LEFT JOIN opencourrier.type_correspondant ON courrier.type_correspondant=type_correspondant.type_correspondant WHERE traitement=‘20’ AND typecourrier=‘arrivee’ and ( lower(translate(objetcourrier::varchar,‘���������������������������������������������������’,‘aaaaaceeeeiiiinooooouuuuyyaaaaaceeeeiiiinooooouuuuy’)) like ‘%ligne%’ )”); VERBOSE
1.093 : class om_table - display(): db->limitquery(“SELECT courrier.courrier as “courrier”,registre as “registre”,nature as “nature”,to_char(datearrivee ,‘DD/MM/YYYY’) as “date d’arrivee”,to_char(datecourrier ,‘DD/MM/YYYY’) as “date courrier”,courrier.emetteurnom || CASE WHEN courrier.emetteurprenom IS NULL THEN ‘’ ELSE ’ ’ END || COALESCE(courrier.emetteurprenom, ‘’) as “emetteur”,servicelib as “traitement”,categorie_courrier.libelle as “categorie”,substring(objetcourrier, 1,20) as “objet courrier”,nbtache as “Tache(s)” FROM opencourrier.courrier LEFT JOIN opencourrier.categorie_courrier ON courrier.categorie_courrier=categorie_courrier.categorie_courrier LEFT JOIN opencourrier.civilite ON courrier.civilite=civilite.civilite LEFT JOIN opencourrier.emetteur ON courrier.emetteur=emetteur.emetteur LEFT JOIN opencourrier.service ON courrier.traitement=service.service LEFT JOIN opencourrier.type_correspondant ON courrier.type_correspondant=type_correspondant.type_correspondant WHERE traitement=‘20’ AND typecourrier=‘arrivee’ and ( lower(translate(objetcourrier::varchar,‘���������������������������������������������������’,‘aaaaaceeeeiiiinooooouuuuyyaaaaaceeeeiiiinooooouuuuy’)) like ‘%ligne%’ ) ORDER BY courrier.courrier DESC”, 0, 15); VERBOSE
class om_table - database::isError(): QUERY => SELECT courrier.courrier as “courrier”,registre as “registre”,nature as “nature”,to_char(datearrivee ,‘DD/MM/YYYY’) as “date d’arrivee”,to_char(datecourrier ,‘DD/MM/YYYY’) as “date courrier”,courrier.emetteurnom || CASE WHEN courrier.emetteurprenom IS NULL THEN ‘’ ELSE ’ ’ END || COALESCE(courrier.emetteurprenom, ‘’) as “emetteur”,servicelib as “traitement”,categorie_courrier.libelle as “categorie”,substring(objetcourrier, 1,20) as “objet courrier”,nbtache as “Tache(s)” FROM opencourrier.courrier LEFT JOIN opencourrier.categorie_courrier ON courrier.categorie_courrier=categorie_courrier.categorie_courrier LEFT JOIN opencourrier.civilite ON courrier.civilite=civilite.civilite LEFT JOIN opencourrier.emetteur ON courrier.emetteur=emetteur.emetteur LEFT JOIN opencourrier.service ON courrier.traitement=service.service LEFT JOIN opencourrier.type_correspondant ON courrier.type_correspondant=type_correspondant.type_correspondant WHERE traitement=‘20’ AND typecourrier=‘arrivee’ and ( lower(translate(objetcourrier::varchar,‘���������������������������������������������������’,‘aaaaaceeeeiiiinooooouuuuyyaaaaaceeeeiiiinooooouuuuy’)) like ‘%ligne%’ ) ORDER BY courrier.courrier DESC LIMIT 15 OFFSET 0 DEBUG
class om_table - database::isError(): SGBD ERROR => nativecode=ERREUR: séquence d’octets invalide pour l’encodage « UTF8 » : 0xe0 0xe1 0xe2 DEBUG
class om_table - database::isError(): PEAR ERROR => DB Error: unknown error DEBUG
1.093 : class utils - __destruct() VERBOSE
Si je teste les requêtes une à une dans phppgadmin (sous windows), elles fonctionnent. La base de données est en UTF8.
Je ne sais pas où chercher. J’ai regardé sur les forums et aucune info à ce sujet.
J’ai voulu m’inscrire sur le forum qui se trouve sur adullact.net mais je ne reçois pas de mail de confirmation.
Bref, si vous pouviez me donner une piste de résolution du problème, cela m’aiderait beaucoup. Merci.