Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

299
Vistas
Envíe blob desde el formulario js con axios, consígalo con php e insértelo en mysql db

Después de buscar por un tiempo, todavía estoy atascado y necesito ayuda.

Para un proyecto personal, necesito un formulario js donde se pide información y también una foto. Un script js permite seleccionar una parte de la foto y convierte la foto al tamaño y extensión correctos (primero cropper-js y después de la conversión de imagen). Con esto, tengo un archivo blob.

 var params = new URLSearchParams(); params.append("data1", document.data1); params.append("data2", document.data2); params.append("data3", document.data3); params.append("data4", document.data4); params.append("blob", blob); const config = { headers: { "Content-Type": "multipart/form-data", }, }; axios.post(url_to_php_file, params, config).then((res) => { console.log(blob); }

En console.log, puedo ver mi objeto blob (cambio de tamaño si cambio la foto) Blob {size: 49759, type: 'image/jpeg'}

Con php, inserto en mysql db

 function fonctioninsert($table,$valeurs) { global $bdd; global $prefix_tables; $requete = 'INSERT INTO '.$prefix_tables.$table.'('; $i = 0; foreach ($valeurs as $key => $value) { if ($i != 0) { $requete .= ','; } $requete .= $key; $i++; } $i = 0; $requete .= ') VALUE ('; foreach ($valeurs as $key => $value) { if ($i != 0) { $requete .= ','; } $requete .= "'".$value."'"; $i++; } $requete .= ')'; $req = $bdd->prepare($requete); $req->execute(); //$req->closeCursor(); return $req; } $table = "table1"; unset($valeurs); $valeurs = array( "data1" => $_POST["data1"], "data2" => $_POST["data2"], "data3" => $_POST["data3"], "data4" => $_POST["data4"], "blob" => $_POST["blob"] ); fonctioninsert($table,$valeurs);

El proceso inserta datos en db pero la columna blob (tipo LONGBLOB) sigue siendo la misma con 13 o. tamaño incluso si cambio la foto. Probé con $_FILE pero en este caso, no tengo nada en la columna de mysql blob.

Es como si php no recibiera nada y/o insertara un blob vacío en db.

¿Alguien sabe donde estoy fallando?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

De hecho, el problema es con el apéndice. Antes de agregar, tengo un archivo blob pero después, tengo un archivo, luego el script PHP recibe un archivo y no puede insertarlo en una columna blob mysql. Como no puedo convertir el archivo a blob con php en mi servidor, finalmente opté por guardar archivos en lugar de mysql y funciona bien.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda