Bonjour,
Je cherche à enregistrer/charger le contenu d'un tableau via le sélecteur de fichier. Visiblement la fonction n'est pas possible en html. Auriez-vous une solution ?
Sauvegarder la position de la scène aurait aussi pu fonctionner mais là non plus, pas en html5...
Salut,
C'est impossible d'enregistrer des fichier sur l'ordi d'un utilisateur en Js (html5) pour des raisons de sécurité.
La seule solution est de faire un script PHP pour enregistrer sur le serveur et l'appeler via l'objet GET.
Et si je défini le chemin, je peux mettre un fichier dedans ? Genre cookies ?
J'essaie de permettre la sauvegarde de mon editeur 2.5D en ligne.
Peut être avec String parser, tu créer une chaîne avec toutes tes données, par exemple
x1|y1|x2|y2
Et tu l'envois dans une fonction JS que tu met sur ta page web (en utilisant l'objet HTMl5)
saveFile(string) {
var win = window.open();
win.document.innerHTML = string;
}
Après c'est à l'utilisateur de sauvegarder ces données.
Un ini ça fonctionnerait ?
Le problème est que l'objet ini ne lit pas les chaînes, il travail que sur des fichiers donc ça reviend au même problème.
Tu as déjà essayé la fonction Cookies du html5 ?
Voilà la beta si vous voulez tester :
Dans l'idéal au moins garder en mémoire les positions 26 variables des objets et leur nombre pour garder la dernière création en date. Au mieux sauvegarder ses créations pour les récupérer plus tard.
En html5, l’objet ini utilise le Stockage Local et non un fichier. Il suffit juste de l’utiliser de la même façon que sur les autres supports. J’avais fait un post là dussus il y a pas mal de temps Sauvegarder en html5
Hello, si tu regardes tout à la fin dans les coms, il semblerait qu'ils appellent un fichier via une url. Visiblement, appeler directement un fichier crée une erreur de sécurité.
ouais donc c'est bien ça, ton stockage local est bien l'url de ton jeu. En utilisant l'inspecteur de firefox, il s'appelle 25D.ini et c'est un array.
J'ai lancé la recherche de ce fichier sur mon ordi et pour le moment ça mouline toujours. Possible que cela soit encrypté dans la cession firefox. Tu peux voir le nom de cette cession toujours avec l'inspecteur de firefox dans l'onglet deboggeur et tu développes à gauche "blob://". Et là tu as un nom de cession interminable ;)...
Là il faudrait que de vrai prog internet revienne vers toi.
désolé de pas pouvoir faire plus.
EDIT ; ça y est ... recherche enfin terminée et fichier introuvable.
EDIT 2 : peut être un élément ici mais c'est pour Crome !
stackoverflow.comAppData\Local\Google\Chrome\User Data\Default\Local Storage
Merci l'ami, j'ai trouvé cette discussion mais je n'y comprend pas grand chose...
https://community.clickteam.com/threads/83757-ini-works-with-html5
Oui en faite les navigateurs permettent de stocker des chaînes de caractères dans un dossier local mais qui sont supprimée une fois le cache viré.
Plus d'infos ici: https://developer.mozilla.org/fr/docs/Web/API/Window/localStorage
Firefox dit que c’est un array, en fait c’est pas vraiment le cas.
La structure est la même que celle d’un fichier .ini, en remplaçant les retours à la ligne par {@24}.
(Et petite recommandation en passant : utilise plutôt le nom ton jeu pour le nom du ficher. Il y a un seul stockage domaine, donc toutes les sauvegardes sont au même endroit.)
Merci à tous.
J'ai botté en touche. L'application génère un fichier texte que l'on peut copier/coller ni'importe ou pour sauvegarder des créations.
Si vous avez envie de tester : futuregames.free.fr
Copiez/collez le contenu de ce fichier texte dans l'éditeur de texte ;)
La meilleure solution ne serait pas de passé par du php/mysql pour sauvegarder, vu qu'on est sur le web ?