Je reprend une ancienne application et essaie de la rendre plus "propre".
Ainsi, je cherche à gérer les messages d'erreur en partant d'une BDD, le n° de l'erreur permettant l'affichage du texte et de l'icône...
Le script
Code : Tout sélectionner
MsgBox(16, "Erreur !", "Suite à 3 saisies erronées de votre mot de passe, " & @CRLF & _
" vous n'avez plus accès à l'application" & @CRLF & _
" Merci de contacter un des responsable de l'association")J'ai mis ce même texte dans un champ de BDD (mysql) et j'ai créé une fonction :
Code : Tout sélectionner
Func _GesErreurs($NumeroErreur)
$Erreur=_EzMySql_GetTable2d("SELECT * FROM erreurs WHERE Id_Erreur='" & $NumeroErreur & "'")
MsgBox($Erreur[1][1], $Erreur[1][2], $Erreur[1][3])
EndFunc
Lorsque j'appelle la fonction, par exemple _GesErreurs(1) qui est la première erreur logée dans la base, le texte s'affiche littéralement (avec les guillemets, les @CRLF en clair, etc.) dans la msgbox, au lieu de tenir compte des sauts de lignes. J'ai tenté de supprimer tous les guillemets, d'en rajouter au début et à la fin de la chaîne, d'échapper les guillemets avec des "\" mais rien n'y fait...
Cette gestion est-elle possible ou dois-je en rester à des messages individuels logés dans l'application ? Certains étant redondants, la solution base de données me semblait plus propre...
Merci !
Remarque : je n'ai pas joint l'UDF EzMySq.au3 afin de ne pas charger le serveur d'autant que je ne pense pas que le problème vienne de lui puisque je récupère bien ma chaîne...




