cuando tratar de subir las fotos por medio de un formulario solo me salen los nombres de las fotos pero no me sale la misma.
mi pregunta es si se pueden meter a mysql o no....y si se puede como lo hago...
gracias
Jose Miguel
| |||
no se si se pueden meter fotos a mysql por medio de multipart/form-data cuando tratar de subir las fotos por medio de un formulario solo me salen los nombres de las fotos pero no me sale la misma. mi pregunta es si se pueden meter a mysql o no....y si se puede como lo hago... gracias Jose Miguel |
| ||||
mira, el Cluster recomienda subir las fotos al serv y solo guardar la ruta en el mysql,, pero como tu estas pidiendo la respuesta a tu pregunta, te la dare: deben existir 2 campos en tu tabla: imagen LONGBLOB, filetype char(50) EL FORMULARIO: <form name="envio" method="post" action="sending.php" enctype="multipart/form-data"> <input type="file" name="form_data"> <input type="submit" name="enviar" value="Enviar"> </form> donde envias tu info a la bd, debes poner esta: Código PHP: Código PHP: ![]() ![]()
__________________ |
| |||
jeje carmargo .. Últimamente he cambiado un poco de opinión no siendo tan "cerrado" como lo era antes xDD.. Si el tamaño de las imagenes no es grande (hablemos de 50K max?) pero tal vez son muchas .. vendría bien meter las imagenes (o archivos) a tu BD .. Los access a BD "dicen" que son mas rápidos que al sistema de archivos del servidor ... Pero, si las imagenes (archivos en general) son "pocas" y de gran peso (hablemos de algunos MegaBytes ..) sería recomendable guardarlas en el sistema de archivos (y en tu BD solo la referencia del nombre/ubicación fisica) del archivo ... Si hay de todo un poco .. podrías probar ambos métodos y ver que tal responden (en cuanto a tiempos de ejecución) ... Recuerda tambien que el espacio fisico que ocupe tu Base de datos en un servidor usando algun servicio de Hosting suele estar limitado a X MegaBytes .. y suele ser MUCHO menos que lo que contratas para el resto del sitio (FTP total) .. De esto hay que "informarse" antes, pues la alternativa la tienes por si hay problemas en ese punto. En resumen .. "Cada proyecto hay q evaluarlo" .. Pero si preguntas por ese método hemos de suponer que ya lo tienes así decidido (yo solo comento esos detalles por si alguien lee esto y todavía está por decidirse ..) Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| |||
mi problema es estoy haciendo una pagina de clasificados en la cual la gente me tiene que subir imagenes de lo que quieren vender....entonces si me suben las fotos a algun lugar no sabria de quien es .... entonces pense que lo mejor seria meterlo en la bd.... pero recuerdense que todavia estoy aprendiendo ..... no he podido hacer que me sirviera......no la puedo ver... me dieron el codigo alli arriba y creo que lo hice todo bien |
| |||
sicuesn .. Tanto si subes tu imagen y la dejas en un directorio de tu servidor .. como si la metes fisicamente a una Base de datos .. SIEMPRE puedes guardarte mas datos asociados a esa imagen en otros campos del registro que creas para esa imagen .. Para eso . esos formularios "multipart" te permiten poner mas campos de texto (<input>) para que le pidas datos sobre esa imagen o se los asigna tu programación a la hora de colocar fisicamente esa imagen en la BD (sea en binaro o solo una referencia del nombre de la imagen y/o ruta fisica de donde esté en tu servidor ..) Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| ||||
Puedes poner un limite en tamaño (Kb) ej: 150 kb solo aceptar imagenes .gif, .jpg, y asi,, que no ocupen mucho peso como los .bmp y tambien poner un limite en el ancho y alto de la imagen esto te ahorrara espacio, tiempo y velocidad... algunas cosas puedes realizarlas incluso en javascript y otras definitivamente en php... Cluster las imagenes en la BD son un poco mas seguras, y aparte yo las uso para mi sistema de noticias q generalmente no pesan mas de 30kb c/una,, aunque son muchas.. y aun asi voy mas rapido que un lince..xDD.. jeje ..Salu2 Salu2 ![]()
__________________ |
| |||
.. Camargo .. En tu caso particular .. OK, te conviene meterlo en tu BD las imagenes (en binario) .. Lo de seguridad .. mm bueno, es mas sencillo meter tu imagen en binario en la BD que andar pensando en proteger directorios (via .httaccess) .. o subirlas FUERA de tu /www/ (de tu DocumentRoot) .. Pero si te das cuenta es igual de seguro un método q otro, solo que el "tradicional" requiere de mas "trabajo" por parte del programador/administrador del sistema. Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| |||
no se como jalar la imagen de mysql probe con el codigo que me pusiseron arriba y se supone que las imagenes estan en mysql....pero no se como jalarlas para poder verlas |
| ||||
Prueba lo siguiente: crea un archivo el_que_sea.php Código PHP: En la página donde quieras introducir la imagen pon: Código PHP: http://forosdelweb.com/showthread.ph...hreadid=126559 un saludo |
| ||||
Pues yo, para saber de quien es cada imagen que suben mis clientes (publiciudad.com), le pongo a la imagen de nombre el mismo ID del Cliente... ![]() Por ejemplo "129.jpg" Ademas las paso por algunos filtros (tipo de archivo, peso en kb, medidas especificas, etc...) Y en la BD solo guardo un valor que me deja saber una de tres cosas: jpg gif no obviamente los registros que tienen en el campo "imagen" el valor "no", quiere decir que no tienen logo, si tiene "gif" quiere decir que es un archivo GIF, lo mismo para "jpg"... ![]()
__________________ Manoloweb |
| ||||
Bueno ok, con los códigos es cuestión de probar, pero ¿se puede probar el código en un servidor local como Apache? es decir sin subirlo al web, y probarlo solo en tu pc. ¿O necesariamente se tiene que probar directamente en la web? Gracias y Saludos. |
| |||
kawoq .. Si te instalas Apache+PHP+Mysql .. ya tendras en tu PC lo mismo que tienes en Internet en tu "servidor" ... Es mas .. si dispones de una conexión 24Horas y bastante ancho de banda podrías prescindir incluso de tu "servidor" en internet . pues tu PC ahora sería "el Servidor" .. Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| ||||
Con respecto al tema: Tengo en mi server local la siguiente configuración: file_uploads: on upload_tmp_dir: c\foxserv\uploadtemp upload_mas_filesize: 2M Pero el archivo temporal me lo guarda en: c:\documents and settings\user\config\temp Con lo cual no consigo que me guarde el archivo en mi bd ¿A que puede ser debido? Un saludo Última edición por Pandragon; 28/04/2003 a las 10:16 |
| |||
Pandragon ... El PHP.ini que "manda" es el que diga tu: <? phpinfo(); ?> Ahí mismo deberías ver el dato de la directiva: upload_tmp_dir y ver donde apunta. Ha de ser la misma la que tengas en tu php.ini con la que te iforme phpinfo() .. tal vez estas modificando el php.ini que no corresponde. Acuerdate tambien de reiniciar tu servidor si haces cambios en tu php.ini .. Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| ||||
Ok gracias cluster, creo que esto me esta dando mucho problema, estoy intentando con todo lo que encuentro en los mensajes, y ahora he probado de la forma que cita Camargo, pero me marca el siguiente error: Warning: fopen("", "r") - Invalid argument in c:\archivos de programa\apache group\apache\htdocs\paginas\rigoqueme\php\almacena r2.php on line 11 Cita: y el archivo almacenar es el siguiente:Warning: fread(): supplied argument is not a valid File-Handle resource in c:\archivos de programa\apache group\apache\htdocs\paginas\rigoqueme\php\almacena r2.php on line 11 Este es el id que tendra en la base de datos: 0 Código PHP: |
| ||||
Cluster mi phpinfo() Dice: file_uploads: on upload_tmp_dir: c\foxserv\uploadtemp upload_mas_filesize: 2M Y la verdad es que me estoy volviendo loco. kawoq. revisa tu php.ini y mira la siguiente variable: open_basedir y revisa tambien las que son objeto de mi consulta. Un saludo |
| ||||
Bueno creo que detecte el error, el error sale cada vez que no inserto una imagen, ya cuando la inserto desde una capeta ya no sale. Ahora el problema es que no almacena a la base de datos. ¿Podrán ayudarme? |
| |||
kawoq .. Si no insertas una imagen .. como ya has comprobado $fom_data tiene valor NULL .. así que si haces algun condicional tipo: Código PHP: mas info: http://www.php.net/manual/es/features.file-upload.php Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| ||||
Cluster yo uso para recibir el cuestionario: Código PHP: Código PHP: |
| |||
kawoq .. ¿Seguro que tu BD se llama root? .. y no "rqch"? Menudo lio .. tienen ahí: $db="rqch"; $db = mysql_connect("$localhost","$kawoq"); mysql_select_db("$kawoq",$db);[/PHP] debería ser: Código PHP: $_FILES['form_data'], $_FILES['form_data']['type'] .. etc (el link del manual ya lo dí ..). Eso para la parte "UPLOAD" .. Un saludo, ..
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| |||
Pandragon .. please .. inicia un nuevo tema con tu problema .. esto ya es un lio con problemas de uno .. y problemas del otro .. cada uno usa su própio código y cada uno tiene sus fallos o errores los cuales deben de indicarlos!. Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| ||||
ok gracias por la recomendación de el link, verificare lo que dices, y con respecto a los temas, postee mi mensaje acá por el hecho de que use el codigo que camargo sugirió, pues no crei conveniente abrir otro tema si fue de este de donde se tomo el código, de todas formas gracias por la recomendación y tendré cuidado al postear los mensajes para mantener ordenado el foro. Gracias por los links y respuestas, lo intentaré ![]() Última edición por kawoq; 28/04/2003 a las 11:17 |
| ||||
Gracias Cluster, con el código que me diste me fui dando realmente cuenta de mis errores, y ahora ya logre conectar y almimentar desde mi formulario a la BD. los errores eran: de Sintaxis, y que estaba llamando a una variable inexistente. codigo anterior: Código PHP: Código PHP: Seguire probando, gracias. Por la ayuda |