How to save a base64 image from javascript with php | Our Code World

Bon, on ne m'enlèvera pas de la tête que c'est pas super intuitif, ni super simple, mais bon, je n'ai trouvé que ça qui fonctionne...

Mon souci

  1. Je crée une image côté navigateur avec canvas
  2. je veux l'envoyer à mon serveur pour stockage

On pourrait croire que c'est simple, hein... ben j'ai pas trouvé, personnellement.

J'ai essayé

  1. de transformer le canvas en blob et de l'envoyer via un formdata
  2. de transformer le canvas en blob et de l'envoyer comme un objet simple
  3. de transformer le canvas en DataURL et de l'envoyer via un formdata
  4. de transformer le canvas en DataURL et de l'envoyer comme un objet simple

Mais à chaque fois, j'ai pas été foutu de récupérer les données côté PHP (bon, je me doute qu'il doit y avoir un pacson de trucs que j'ignore encore, hein...)

Ensuite, j'ai pensé

«et si je passais les données au format base64, je devrais pouvoir les récupérer facilement...» car je pratique couramment un optimisme ridicule au sujet duquel il m'arrive encore de sombrer dans la stupéfaction à grand fracas...

Dont acte: je recommence à farfouiller avec des fetch, des posts pis tout mais sans succès: les données décodées font une image invalide.

en désespoir de cause

Je décide de procéder moins élégamment: je copie les données vers un formulaire caché que je poste en target blank pour pas perdre ma page de travail... Oui, je sais, c'est sale, c'est moche, c'est pas secure, j'en ai conscience, c'est pas la peine de m'enfoncer, j'ai déjà assez honte comme ça...

Je reçois bien de la base 64, je décode... Et l'image n'est toujours pas valide. Puis une recherche m'apprend qu'il faut virer l'en-tête base64 côté serveur avant de décoder pour que ça fonctionne...

Je teste et... ça marche.

SUPER INTUITIF MERCI

How to Favicon in 2021: Six files that fit most needs — Martian Chronicles, Evil Martians’ team blog

Entre les navigateurs «legacy» qui veulent au max du 32x32, les apple qui demandent du 180x180 (c'est quoi ce format perso de merde à la apple), les webapps android qui réclament du 192x192 et du 512x512, les windows Tile, les Safari pinned (sans compter les trucs expérimentaux) et le fait que l'ensemble doit être déclinable en dark-mode ou bright-mode, ça en fait des icônes...

Mais qu est-ce que c est que ce bordel  les gars   .jpg

Genre, on se retrouve à charger plus lourd en favicon qu'en contenu pertinent et utile... tout ça pour afficher une icône dans l'onglet du navigateur ! Une trentaine d'icône pour être sûr que l'image elle sera zoulie partout... (on se croirait revenu au temps de la rétrocompatibilité IE6-8). Heureusement que l'auteur nous annonce que les favicons sont chargées en background par le navigateur et n'affectent pas l'expérience utilisateur...

Ha  ben ça va alors   .jpg

On est en 2020 les mecs

Genre, vous pourriez utiliser globalement le svg pour avoir un rendu joli quelle que soit la taille et c'est marre. Alors je sais, on a - globalement - des connexions de fifous qui s'accommodent de cette surcharge, mais:

  1. justement, pas tous: beaucoup n'ont pas des connexions de privilégiés; la campagne, les zones blanches, les pays en voie de développement etc... C'est pas cool de leur imposer des surcharges.
  2. ça me rappelle les développeurs qui tablent sur le perfectionnement technologique des machines pour pas s'emmerder à optimiser leurs bouzins en se disant que ça tourne sur leur bécane à 4000 boules.
  3. c'est du loose-loose: les devs s'emmerdent avec des brouettées d'icônes aux formats les plus strange qui soient et les utilisateurs se font bouffer le forfait 2€ free juste pour charger l'icône du site... Le jeu n'en vaut pas la chandelle: il y a sans doute de meilleurs emplois du temps de dev et de la bande passante.

Heureusement

...l'auteur propose de limiter à 5 le nombre d'icônes (avec un fichier manifest)... c'est déjà ça.

C est bon  j ai fini mon coup de gueule  vous pouvez y aller  (1).jpg

Via https://sebsauvage.net/links/?7JTrSQ

Documentation | SVGBox.net

Un service qui permet d'utiliser des icônes svg dans la couleur qu'on souhaite avec une API (du genre: hero-solid.svg?fill=f50a0a&ic=heart)

ça m'a paru pas mal du tout (j'ai même envisagé de m'en faire un à moi pour partager ensuite en version libre et auto hébergeable) et puis j'ai téléchargé une icône au hasard... 78ko.

78ko pour UNE icône SVG, les gars, c'est carrément trop... Pour info, une icône sur noun project ça pèse autour de 2ko... Une webfont personnalisée via fontello pèse 10 ko pour une vingtaine d'icônes... le pack «regular» complet de fontawesome pèse 136ko pour 152 icônes...

C'est avec des «services» de ce genre qu'on se retrouve avec des pages qui pèsent plusieurs méga pour le moindre contenu.

tsstss...

Covid: on nous cache tout ? On nous dit (plus) rien...

Je suis le seul à ne plus trouver les chiffres des nouvelles contaminations de Covid 19 par jour ?

Jusqu'à naguère, 20 minutes faisait un post quotidien avec un décompte précis... tous les fucking jours depuis des mois.

Or, depuis le pseudo confinement light, plus rien. Et quand je cherche, je tombe sur des chiffres cumulés, les nombres de morts, le nombre de lits occupés en réa etc, mais jamais le nombre de contaminations / jour...

Je serais complotiste, j'y verrais un moyen pour le gouvernement d'éviter qu'on leur prouve que confiner tout le monde sauf les écoles et les transports en commun ne sert à rien...

Je préfère penser que c'est moi qui suis un manche et que je n'ai pas encore (re)trouvé où chercher...

EDIT: Si, l'internaute semble avoir des infos https://www.linternaute.com/actualite/guide-vie-quotidienne/2489651-chiffres-covid-bilan-du-coronavirus-en-france-mardi-3-novembre-2020/

Edit2:

Edit3:

  • https://covidtracker.fr : Au moment où j'écris ces mots, les données ne sont pas à jour précisément pour le nombre de contaminations quotidiennes: 31/10 pour les contaminations alors que pour les autres chiffres, la dernière mise à jour date du 3/11...

(...)

Souhaiter la mort de Donald Trump sur Twitter peut entraîner la suspension de votre compte

Oui, lui souhaiter la mort, c'est pas bien...

En même temps, s'il crève, je m'en fous... Si j'ai des larmes à verser sur les morts, je le ferai sur celles des gens qui meurent noyés en méditerranée pour avoir une vie meilleure, hein, pas sur un gros con qui s'emploie de toutes ses forces à rendre le monde encore plus merdique qu'il n'est.

if he dies

Fil RSS des articles