Guardar imágenes en phpmyadmin

B

Hola,

Estoy intentando guardar unas imágenes en una base de datos en phpmyadmin, aunque ahora consigo que no me de error, no se copia la foto.
Pego código de lo que tengo hecho.

<?php
	$con = mysqli_connect("localhost","root", "", "basededatos") or die ("No se ha podido conectar con la base de datos"); //conexion, usuario, contrase�a, nombreBBDD
	
echo "<form method='post' action='' enctype='multipart/form-data'>
		Nombre:<input type='text' name='nombre' size='8' maxlength='8'/><br/>
		Imagen:<input type='file' name='imagen'/><br/>
		<input type='submit' values='guardar' name='guardar'/><br/>";

    if (isset($_POST['guardar'])){
        //recuperar
        $nom = $_POST['nombre'];
        //$nombre = $_FILES['imagen'][$nom];
        $tmp = $_FILES['imagen']['tmp_name'];
        $destino = 'imagenes';
        echo $_POST['nombre'].'   Temporal:  '.$tmp;
        //Movera el archivo del folder temporal a una nueva ruta
        //move_uploaded_file($tmp, $destino.'/'.$nom);
        copy($tmp, $destino);
    }
    mysqli_close($con);
     ?>
1
DarkSoldier

#1 No tengo claro que entiendas que es una base de datos, que es phpmyadmin y que hace ese código xD

1 1 respuesta
B

Creo que si que tengo claro que es una base de datos y phpmyadmin.
En ese código lo que intento guardar en la base de datos es la ruta de la imagen. Ya que inicialmente quería que la imagen se subiera pero tampoco me salía.
Tal cual esta el código copiado no me da error, pero no se me copia en la base de datos que tengo en phpmyadmin.

4 respuestas
Amazon

#3 dónde está el código de insertar/actualizar en la base de datos la ruta de la imagen? En qué línea?

1 respuesta
Nucklear

#3 Pues normal que no se copie a la DB si no estas haciendo el INSERT de nada, de todas formas espero que no utilices ese código en una página abierta al público porque es peligroso.

DarkSoldier

#3 será un bug de php pues

S

#4

E

#1 si quieres guardar la ruta de la imagen, tendrás que insertarlo en algún sitio no? yo no veo nada. Si lo que quieres es guardar la imagen, tendrás que usar blob.

B

Y de no usar mvc,singleton, ni sanear la entrada de datos no decimos nada?. Mediavida ya no es lo que era.

1 respuesta
X-Crim

Utiliza Bootstrap para estos casos. No funcionará, vale, pero y lo bonico que queda?

3
Nucklear

#9 Oye que yo si lo comenté xD

B

Teneis razón no he hecho el insert, lo pruebo y os digo.

Porque no es seguro esta forma? como tengo que hacerlo?

Como se sanea la entrada?

Soy principiante, me queda mucho por aprender.

Gracias

3 2 respuestas
NickNack

no os paséis, que tiene pinta de que el chico/a esté aprendiendo y nadie nace sabido.

Hay muchos tutoriales por internet acerca de esto y plataformas donde puedes aprender más fácilmente como codeacademy. Échales un vistazo ;)

1
Amazon

No pasa nada Patri, nosotros te ayudamos

HeXaN

#12 Siendo principiante, no te preocupes por esas cosas todavía. Te queda un largo camino.

1 respuesta
B

#12

Sanear entradas a la base de datos: usa pdo y los "prepare" "bindeando" parámetros( http://php.net/manual/es/pdostatement.bindparam.php ). Luego también puedes añadir una doble capa saneando via javascript pero no te asegura nada.

Patrones de diseño: http://www.phptherightway.com/pages/Design-Patterns.html

#15 Más razón para que aprenda a hacer las cosas bien desde el principio.

1 respuesta
B

Si si pero quiero saberlo porque estoy haciendo una pagina para un proyecto de un curso y que a su vez será una pagina real para una amiga.

1 respuesta
B

Gracias umbranoide me lo miro

DarkSoldier

coño a mi me da igual que intente aprender pero que no suelte lo de #3 xD si pide ayuda que la acepte xD

1 respuesta
Nucklear

#17 Necesitas comprobar que el archivo que se sube cumple con una serie de características que dependen de lo que necesites para la web. Si tu amiga necesita subir solo documentos PDF, DOC, etc..

Necesitas en primer lugar, validar que la extensión coincide con los archivos que permites subir (Usando una whitelist) y mas importante todavía es comprobar que el archivo contiene realmente lo que dice.

Como dice #16 usa PDO para curarte en salud siempre y cumple con algun patron de diseño para no acabar con codigo spagetti

MTX_Anubis

#19 Es que le has ayudado una barbaridad en #2

1 1 respuesta
DarkSoldier

#21 si quieres te ayudo a ti también

2 respuestas
MTX_Anubis

#22 Ajam, qué interesante.

eXtreM3

#22 un mal día en la oficina? Vaya humos manejáis algunos que os creéis los dioses del dev.

#1 aparte de algunos consejos buenos que te han dado, yo te doy otro: separa el código html del código php.

1 1 respuesta
DarkSoldier

#24 llevo casi 3 meses de baja, me operaron del culo again :) y no me creo un dios, lo soy

#1 como dice #24, separa codigo html y php y haz tu propio framework.

3 respuestas
E
#25DarkSoldier:

y no me creo un dios, lo soy

xddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd

eXtreM3

#25 el dios culofino.

2
Merkury

#25 Y aqui esta su simbolo xD

Usuarios habituales