PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → Images ne s'affichent pas dans ZR sous iOS
Images ne s'affichent pas dans ZR sous iOS
Débuté par Roms, 18 mar. 2019 11:59 - 7 réponses
Posté le 18 mars 2019 - 11:59
Bonjour à tous,
J'ai une zone répétée qui est alimentée par une base de données MySQL.
Dans cette ZR, j'ai un champs image (entre autres).
Dans ma base de données, l'image est stockée en BASE64.
Lors des tests sur émulateur MAC, les images restent désespérément vides. Sur périphériques Android, les images s'affichent correctement.
Je ne comprends pas ce qui se passe. Auriez-vous une idée ?

Merci à vous
Membre enregistré
3 344 messages
Popularité : +93 (137 votes)
Posté le 18 mars 2019 - 20:14
@roms,
Sur qu'elle version de WM est tu?
Ta base est distante MySQL et PHP, ou locale SQLite ?
Peut on avoir le code de remplissage de ta ZR?
Cela pourrait aider a te répondre.
Posté le 19 mars 2019 - 09:58
Bonjour,
Merci de vous intéresser à ce problème. Je suis en WM 23.
Je tiens à préciser que ce code fonctionne sur un matériel Android

Voici le code de remplissage de la ZR :

FenAttenteDébut("Chargement...")

Cond est une chaîne
Cond="SELECT "+RC+...
"LIEU.NomLieu,"+...
"LIEU.AdresseLieu,"+...
"LIEU.CodePostalLieu,"+...
"LIEU.VilleLieu,"+...
"LIEU.TelephoneLieu,"+...
"LIEU.MailContactLieu,"+...
"LIEU.HeureOuverture,"+...
"LIEU.Photo"+RC+...
"FROM LIEU"+RC+...
"WHERE LIEU.LieuActif=1 AND LIEU.EstLieuAccueil=1"

SI PAS ExecuteSQL("ReqListeLieuxAcc",Cond,NomBaseAgend,Faux) ALORS
ToastAffiche("Erreur lors de la récupération des lieux d'accueil du public jeunes",toastLong)
FenAttenteFin()
RETOUR
FIN

MonBuffer est un Buffer
TANTQUE SQLAvance("ReqListeLieuxAcc")=0
// Chargement de la photo
MonBuffer=Décrypte(SQLLitMémoTexte("ReqListeLieuxAcc",8),"",crypteAucun,encodeBASE64) // Stocké dans la Base de données au format BASE64

// Ajout du lieu d'accueil à la ZR
ZoneRépétéeAjouteLigne(ZoneRépétéeLieuxAccueil,...
SQLLitCol("ReqListeLieuxAcc",1),... // Nom lieu d'accueil
SQLLitCol("ReqListeLieuxAcc",2)+RC+gPoliceGras(Vrai)+SQLLitCol("ReqListeLieuxAcc",3)+" "+gStylo(RougeClair)+SQLLitCol("ReqListeLieuxAcc",4)+gPoliceGras(Faux)+gStylo(Noir),...
SQLLitCol("ReqListeLieuxAcc",5),... // Téléphone
SQLLitCol("ReqListeLieuxAcc",6),... // Mail
SQLLitCol("ReqListeLieuxAcc",7),... // Horaires
MonBuffer) // Photo
FIN
SQLFerme("ReqListeLieuxAcc")
DéconnecteSQL()

FenAttenteFin()

Merci à vous
Posté le 19 mars 2019 - 10:01
Popoy a écrit :
@roms,
Sur qu'elle version de WM est tu?
Ta base est distante MySQL et PHP, ou locale SQLite ?
Peut on avoir le code de remplissage de ta ZR?
Cela pourrait aider a te répondre.


La base de données est MySQL distante que j'attaque par le webservice fournit par PCsoft
Membre enregistré
3 344 messages
Popularité : +93 (137 votes)
Posté le 20 mars 2019 - 09:40
Salut @roms,
je pense que le problème vient de la fonction décrypte qui ne fonctionne pas delà même façon en wd, WM, WB et selon que tu es sur Android et iOS.
c'est écrit dans l'aide.
il faut utilisé décrypte standard https://doc.pcsoft.fr/fr-FR/?1000021294&name=decryptestandard_fonction
ou décodé https://doc.pcsoft.fr/fr-FR/?1000022259
Posté le 21 mars 2019 - 14:30
Popoy a écrit :
Salut @roms,
je pense que le problème vient de la fonction décrypte qui ne fonctionne pas delà même façon en wd, WM, WB et selon que tu es sur Android et iOS.
c'est écrit dans l'aide.
il faut utilisé décrypte standard https://doc.pcsoft.fr/fr-FR/?1000021294&name=decryptestandard_fonction
ou décodé https://doc.pcsoft.fr/fr-FR/?1000022259


Merci Popoy !
Tu m'as mis sur la piste.
En fait, dans ma base de données MySQL, la rubrique image était de la forme LONGBLOB, sous Android, il voulait bien m'afficher les images mais pas sous iOS. J'ai dû passer la rubrique image de LONGBLOB à LONGTEXT et tout est OK !
Merci à toi !
Membre enregistré
3 344 messages
Popularité : +93 (137 votes)
Posté le 21 mars 2019 - 19:56
franchement, c'était tellement évident qu'un élément en base 64 est du texte
que je n'ai pas pensée que tu l'avait stocker en binaire.
j'aurais dû te posé la question.
je m'excuse.
il n'empêche qu'il faut quand même éviter decrypte
Membre enregistré
11 messages
Posté le 16 juillet 2020 - 11:34
Peut tu m'aider je rencontre les mêmes problème je veux récupérer des image que j'ai enregistré avec PHP en base64 dans mon app windev mais ça ne fonctionne pas besoin d'aide