Marcofbb Noticias y Artículos Webmasters



Publicidad marcored

Upload de imágenes

  • 29/08/2010
  • 3:12 pm
  • marcofbb

¿Se acuerdan del bug del upload de imágenes de unijimpe?
- Si ese que subías un archivo con el nombre, nombre.php.jpg y te guardaba el archivo como php obteniendo un riesgo muy grave para tu cuenta de hosting.

Bueno ese problema se los presento a muchos webmasters y no sabían como arreglarlo, yo acá les traigo los archivos editados.

Descargar

Url del archivo original: http://blog.unijimpe.net/hosting-de-imagenes-en-php/

(*) El upload posteado en la web del autor tiene el bug. Se recomienda descargarlo de acá

Share

¿Necesitas ayuda? o ¿Asesoramiento webmaster? Registrate en nuestro foro de consultas

Posts Relacionados

Total de Comentarios: 45

Avatar
29/08/2010
3:16 pm

Información Bitacoras.com...

Valora en Bitacoras.com: ¿Se acuerdan del bug del upload de imágenes de unijimpe? - Si ese que subías un archivo con el nombre, nombre.php.jpg y te guardaba el archivo como php obteniendo un riesgo muy grave para tu cuenta de hosting. Bueno es......

Avatar
Fede
10/09/2010
2:12 pm

¿Cómo se hace para instalar el upload?

Avatar
10/09/2010
2:45 pm

Tenes que subir todos los archivos a un hosting que acepte php, luego tenes que darle permiso 777 a la carpeta "tmp"

En el archivo "imagehosting.php" tenes que editar la linea que dice

$varpath = "http://samples.unijimpe.net/imagehosting.php?image=";

Por la url de tu web

Saludos

Avatar
Fede
14/09/2010
9:13 pm

Hola,
gracias por responder.
¿Cómo se hace para derle permiso 777 a la carpeta "tmp" y como subo la carpeta al hosting?
Uso miarroba.es

Saludos!

Avatar
14/09/2010
9:34 pm

Mira este tutorial:
http://www.youtube.com/watch?v=l7YsXNHBfto

O del punto 5 para adelante de este:
http://www.marcofbb.com.ar/registrarse-y-subir-archivos-000webhost/

Para dar permiso 777 le das clic derecho al archivo y aprietas "Permisos de archivo" y escribís 777 donde dice "Valor numérico" y aprietas aceptar

Avatar
19/09/2010
2:49 pm

muy buena ,,saludos;) pasen ala mia

Avatar
Fede
21/09/2010
1:04 pm

Gracias, no sabes como te agradezco por ayudarme.
Por cierto, esta exelente el upload.

Saludos!

Avatar
15/10/2010
2:01 am

[...] con php Este es lo que decis vos lo creo unijimpe y yo lo modifique para que no tenga un bug. http://www.marcofbb.com.ar/upload-de-imagenes/ Y aca otro creado por mi Serbice y Dedydamy http://www.marcofbb.com.ar/upload-an...clon-xooimage/ [...]

Avatar
Fede
25/05/2011
5:13 pm

Nomás te quiero decir que este uplaod tiene errores de seguridad. Me lo hackearon... No se como subieron 2 archivos php, con uno podían controlar todos los archivos que tenía subidos y el otro no se para que era.

Avatar
25/05/2011
5:43 pm

Por favor controla que el upload que tenes sea la versión actualizada.

Avatar
Fede
25/05/2011
9:43 pm

Es la versión actualizada, lo había descargado de aca hace unos 7 meses.

Avatar
25/05/2011
9:54 pm

Conectate al msn, así hablamos

Avatar
Fede
25/05/2011
10:10 pm

No tengo tu mail =S

Avatar
25/05/2011
10:12 pm

marcofbb@hotmail.com

Avatar
25/05/2011
10:25 pm

El usuario no tenia la ultima versión del upload, por eso mismo se lo hackearon por Bypass.

Avatar
14/06/2011
5:44 am

Muy buenas Marcofbb, entonces estamos seguros de que tenia la versión antigua y con este no habria ningun tipo de problema?? es que quiero tener una seccion de subir imagenes pero no quiero que me pase lo mismo que a el y tengo un poco miedo sobre dejar subir imagenes :S

Un saludo y espero no haberte molestado 😉

    Avatar
    14/06/2011
    12:36 pm

    Quédate tranquilo que el otro usuario tenia la versión vieja, esta versión es prácticamente imposible hackearla.

    Podes utilizarla sin riesgos y sin miedo

    Saludos

Avatar
15/06/2011
5:05 pm

Muchas gracias por tu respuesta. Voy a probar a ver que tal me va 😀
P.D: El nombre se genera automaticamente o hay que ponerle uno?

Gracias

Avatar
15/06/2011
5:11 pm

El nombre se genera automáticamente

Avatar
20/06/2011
3:43 pm

Hola de nuevo.
Me da los sigueintes errores en localhost:

if ($_POST["action"] == "upload") {

y

Me imagino porque no se han declarado las variables, pero no se podia evitar algo para que no me salga esos dos errores?
Por cierto, me ha sido de utilidad; Lo he aprovechado para subir fotos a mi mysql (He hecho un formulario de registro y donde pone el campo foto he hecho un campo oculto y que coja el valor del campo del enlace directo, funcionar me funciona pero espero que no afecte a la seguridad ni nada :D)

y buen tuto el de "me gusta o no me gusta" me los toy leyendo todos jeje

Un saludo grande 😉

Avatar
20/06/2011
3:47 pm

No afecta la seguridad siempre y cuando antes de subirlo a la base de datos ponga un htmlentities(); a la url.

Después un error acá

[code] if ($_POST["action"] == “upload”) { [/code]

Nunca puede ser en todo caso te dará negativo el if.

Podes poner el error que te imprime en pantalla ?

Saludos y gracias por el comentario 😀

Avatar
22/06/2011
12:40 pm

Los errores son los siguientes:

Notice: Undefined index: action in C:\wamp\www\web\upload_imagen\imagehosting - copia.php on line 60

Notice: Undefined index: image in C:\wamp\www\web\upload_imagen\imagehosting - copia.php on line 139

En esas lineas esta lo que te comente en mi anterior post, esta tal cual lo baje de la web. Sobre htmlentities()no se como hacerlo mu bien, yo lo que hago es cuando le haces un upload te sale un boton que es insertar registro. Lo que hace al darle a ese boton es guardar la ruta de la imagen en el campo de la foto. Luego ya lo llamo con una consulta, para eso no haria falta nada de htmlentities()?

Un saludo y disculpa la pesadez 😀

    Avatar
    22/06/2011
    9:22 pm

    No en ese caso no hace falta,

    imagehosting - copia.php

    remplaza lo por imagehosting-copia.php

    Saludos

Avatar
23/06/2011
2:04 pm

Pues me sigue lanzando el error, pero si lo subo a la web no me lanza ningun tipo de error solo me pasa en localhost.

Un saludo

Avatar
23/06/2011
7:04 pm

Te debe faltar instalar alguna librería, te recomiendo appserv descargatelo

Avatar
04/07/2011
2:13 pm

Buenas de nuevo Marcofbb, desde mi ultimo comentario llevo intentando hacer lo siguiente y es que no lo consigo:
Deseo que rellenen unos campos de la bd (titulo,mensaje,comentario.. y el boton de examinar para el campo foto_imagen) lo que deseo es que cuando lo rellenen todo y examinen la foto y den a enviar, se envien todos los datos y en el campo imagen me guarde la direccion de la url de la foto del servidor) el problema es que la variable de la imagen no se crea hasta que se sube. Lo unico que consegui es o bien que me guarde la url o bien los campos de texto. No se si me he explicado bien y si lo tengo que hacer aqui, si no es asi pido disculpas.

Gracias y un saludo.

Avatar
04/07/2011
3:16 pm

el query para subir todo tenes que ponerlo al final de la subida de la imagen

Avatar
04/07/2011
4:02 pm

Pufff creo que no te pillo, yo tengo el juego de registros de insertar y luego el codigo de tu web. Luego ya uso el siguiente formulario y creo que es donde me falla:

<form method="post" name="form1" action="" enctype="multipart/form-data">

Sector:

<option value="" >

Nombre Via:

Información:

Grado:

<option value="" >

Foto Via:

<input name="foto_via" type="hidden" id="foto_via" value="tmp/">

Avatar
04/07/2011
4:04 pm

No te lo puedo poner porque no me entra los caracteres jeje. pero lo llamaria asi:

<input name="foto_via" type="hidden" id="foto_via" value="tmp/">

Avatar
04/07/2011
4:08 pm

Vos tenes el formulario para subir la foto, dentro de ese mismo formulario le agregas los inputs, después procesas la foto y la subís al servidor una vez terminado eso, tu script tiene que procesar los inputs, y después hacer un query a la base de datos para insertar los datos.

Subí tu código acá: http://sharetext.org/

Avatar
04/07/2011
6:13 pm

Gracias y buena pagina la del codigo, no la conocia jeje!!

Aqui te dejo el codigo: http://sharetext.org/ARYR

Te he puesto el codigo del juego de registros y el del formulario,el de la accion upload no la subi puesto que no modifique nada de ese codigo. Si quieres que lo ponga entero avisame 😉
Y muchas gracias por todo ^^

Avatar
05/07/2011
6:01 pm

Reviso el código y te digo el error, saludos

Avatar
08/07/2011
4:10 pm

Le falta una parte al código, que es la que tiene que ir para subir la imagen, seleccionada en el input file

Avatar
08/07/2011
5:30 pm

Gracias por la respuesta 😉 pero sigo sin poder, el codigo tengo el que me baje mas el que añadir yo para poder insertar mis registros. Entonces no consigo hacer que al insertar mis registros tambien me guarde la url de la foto. Pero si no, no te preocupes, ya hare que se haga en dos veces o no se.

Muchas gracias y a seguir asi con la web 😉

Avatar
08/07/2011
6:04 pm

Tu script tiene que hacerlo de esta forma:

1- Selecionar foto y completar formulario
2- Comprobar todo
3- Subir foto
4- Obtener la url de la foto
5- Subir datos del formulario y url de la foto a la base de datos.

Tenes que ponerle una infraestructura al código y refactorizarlo y tratar de optimizarlo y seguir una logica mas concreta

Avatar
11/07/2011
7:20 am

Pufff, siento ser ya tan cansino pero imposible. Tengo todo el codigo, el de subir la imagen ya lo tenia pero no te lo puse pa no saturar. A mi me hace lo siguiente, me sube la imagen y me guarda los datos en la BD, pero en el campo donde tiene que ir la URL de la imagen, queda con un error de "no definida la variables" y es que pienso, que no le da tiempo a obtener la url de la imagen porque todavia no sabe como se va a llamar. En el campo imagen le añado el codigo: tmp/ y hay es donde creo que esta mal,porque hasta que no suba la imagen no sabe como se va a llamar. Lo hago todo con el boton de enviar formulario.

Avatar
11/07/2011
12:06 pm

Te aconsejo que publiques el código 100% así te puedo ayudar

para saber la url de la imagen tenes que poner la siguiente variable $varpath o http://www.tuweb.com/tmp/$varname

Saludos

Avatar
16/07/2011
11:14 am

Puffff no se como agradecertelo. Me ha funcionado todo perfectamente :D, yo ponia esa variable pero en un sitio equivocado jeje!! Muchas gracias por todo, gracias a ti ya lo tengo 😉

Siempre me lanza un error en esta linea "if ($_POST["action"] == "upload") {" tambien me pasa sin tocar nada del codigo. Probaré en la web que igual es por eso.

Un saludo y gracias 😉

Avatar
16/07/2011
2:37 pm

if ($_POST["action"] == "upload") {

fijate que ese if no tenga un else

if ($_POST["action"] == "upload") {

} else { }

No tendría que tenerlo, saludos

Avatar
17/08/2012
12:40 pm

prefiero chevereto aqui tienen un demo images.peliculasestrenosmf.net

Si quieren descargarlo avisenme y se los envio

Avatar
27/08/2012
2:21 am

[...] crear una vista previa de una imagen que vamos a subir mediante un upload de imagenes, vamos a utilizar la API de archivos. Esta API nos servirá para restringir tamaño y formato de un [...]

Avatar
28/12/2012
6:51 pm

Hola marco,

¿no hay una forma para añadir que despues de subir una imagen hay que esperar 'x' segundos para subir otra?, es que hay gente en mi upload que sube una y despues dan F5 muchas veces, y esm olesto.

Avatar
27/03/2013
7:15 pm

gracias marco, con un poco de php lo incrustare en el sistema de usuarios que creare luego, gracias de nuevo.

Avatar
Patricio
10/10/2013
2:15 am

¿Como hago para que tenga un limite de subida exjemplo que se acepten imagenes hasta 2MB ? Muy buen código

Avatar
Ruth Moreno
03/07/2014
12:33 pm

Buenos días. Muchas gracias marcofbb por compartir tus conocimientos en PHP. Se me presenta el siguiente problema, usando un código upload prácticamente igual al que pones que admite imágenes y pdf de máximo 1 MB. Algunas veces, el archivo carga distorsionado, me explico: si comparo el archivo original con el que se subió al servidor, son iguales en tamaño y extensión, pero el archivo en el servidor muestra la imagen distorsionada (muestra franjas blancas o de otros colores que ocultan el contenido, o simplemente la imagen incompleta). Usé comp.exe para comparar dos de estos archivos, y aparece error de desplazamiento, es decir, corrobora que aunque el tamaño, tipo y extensión son iguales, los contenidos no lo son. Inicialmente, este código de upload estaba dentro de una página que hacía otro montón de cosas, cargaba el archivo y luego enviaba un correo electrónico, así que pensé que podría tratarse de físico agotamiento :-), pero separé el proceso de carga (haciendo el upload primero, usando ajax), y nada, el resultado es el mismo, el archivo sube distorsionado a veces. La conexión del usuario no es buena, pero desde esa misma conexión me envían el mismo archivo adjunto a un correo de Gmail, por ejemplo,y llega bien, así que ese tampoco sería el problema, creo yo. De antemano, te agradezco la ayuda que puedas brindarme.


Enviar Comentario

(*)

(*)