Skip to content

Instantly share code, notes, and snippets.

@parzibyte
Created April 26, 2019 22:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save parzibyte/4318b39de2e766ad9aa2906952ad8401 to your computer and use it in GitHub Desktop.
Save parzibyte/4318b39de2e766ad9aa2906952ad8401 to your computer and use it in GitHub Desktop.
<?php
/**
* Recibir screenshot tomada con html2canvas desde JavaScript
* Visita: https://parzibyte.me/blog
*
* @author parzibyte
*/
$payload = json_decode(file_get_contents("php://input"));
if (!$payload) {
exit("!No hay payload!");
}
$captura = $payload->captura;
$by = $payload->by;
// Aquí obtener más datos si existen...
// Quitar "data:image..." de la cadena
$capturaLimpia = str_replace("data:image/png;base64,", "", urldecode($captura));
//Venía codificada pero sólo la codificamos así para que viajara por la red,
//ahora la decodificamos y
//guardamos el contenido dentro de un archivo
$imagenDecodificada = base64_decode($capturaLimpia);
//Calcular un nombre único
// Nota: el nombre podría enviarse con la carga útil desde JS
$nombreImagenGuardada = "captura_" . uniqid() . ".png";
//Escribir el archivo
file_put_contents($nombreImagenGuardada, $imagenDecodificada);
echo $nombreImagenGuardada;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment