Regresar   Forum Original-Design: Foro de tutoriales Dreamweaver y PSP > Tutoriales Orignal-Design > Tutoriales PHP y MySQL > Ayuda & dudas
FAQ / Ayuda Lista de usuarios Calendario Buscar Posts de hoy Marcar como leído

Votanos!

Votanos Votanos

Responder
 
Herramientas Buscar en esta discusión Estilo
  #1  
Old 12-05-2007, 09:06 PM
Joan
 
Posts: n/a
Predeterminado formulario envio imagen

Como puedo hacer para que un usuario pueda enviar imajenes a mi base de datos Mysql o al algun archivo donde yo ( administrador ) tenga acceso a ea ??
Gracas..
Citar y responder
  #2  
Old 12-06-2007, 11:04 PM
Avatar de wompygs
wompygs wompygs is offline
Administrador/a
 
Registrado: Apr 2007
Posts: 177
Predeterminado

Hola, deberias crear una base de datos en donde se guarden las URL de las fotos, y estas que ellos las suban al FTP mediante un formulario con un campo type file.
As* tu podras borrarlas y administrarlas desde la base de datos.
Citar y responder
  #3  
Old 12-09-2007, 08:28 PM
Joan
 
Posts: n/a
Predeterminado

He creado una table de base de datos con "fotosid ( int)""nombre(vanchar)""file(blob)", despues he creado con dreamweaver un formulario vinculado a esa tabla, en propiedades del formulario he aplicado metodo " POST" y tipo de codificacion "multipart/form-data" ( lo pongo as* porque es lo que he visto por algun tutorial que se debe de aplicar el formulario ), si que me lleva el archivo, pero no puedo visualizar la foto que el usuario me ha enviado para poder gestionar yo en labase de datos y poder validar la foto que envia, (espero haberme explicado bien ). No se que hacer ya, estoy al borde de dejarlo todo, pero lo necesito hacer. Puedes ayudarme ???? Gracias....
Citar y responder
  #4  
Old 12-09-2007, 09:23 PM
Avatar de wompygs
wompygs wompygs is offline
Administrador/a
 
Registrado: Apr 2007
Posts: 177
Predeterminado

Para eso estamos!! jeje
Solo dos cosas,
1)no pongas file como blod. Ponlo como varchar, y en el que se guarde tan solo la URL del archivo que se esta mandando con el formulario ok?
2) usa la funcion de copiar archivos de php para subir el archivo del formulario al ftp, pero esto no tiene nada que ver con la base de datos, va por separado.
de esta forma se copia el archivo y se sube al ftp, y en la base de datos carga la url con el nombre de la imagen, as* es mas facil y la base de datos no se satura.
Espero que me entiendas, sino ya me avisas
Un saludo
Citar y responder
  #5  
Old 12-10-2007, 03:15 PM
Joan
 
Posts: n/a
Predeterminado

Gracias por tu informacion ( lo primero),
pero tengo alguna duda ( como no !! jeje..):
No entiendo la informacion que me diste:
"2) usa la funcion de copiar archivos de php para subir el archivo del formulario al ftp". No se como va eso de subir la imagen mediante ftp mesiante un formulario de " campo de archivo".
Podrias explicarme como se realiza ??? es decir, si no he entendido mal, el usuario ( que entra en mi web) envia su foto mediante ftp a una carpeta de mi servidor, pero la url se me gusrda en mi base de datos, si es asi, te agradeceria que me dijeras como realizar la accion de ftp ( el usuario) o si hay algun videotutorial / tutorial que lo explique, creo que en vuestra wew no hay ( almenos no he sabido encontrarla ) ..

Gracias...
Citar y responder
  #6  
Old 12-11-2007, 01:30 AM
Avatar de wompygs
wompygs wompygs is offline
Administrador/a
 
Registrado: Apr 2007
Posts: 177
Predeterminado

Hola Joan
No hab*a ningún tutorial en la web que lo explique, pero ya que es algo bastante útil hice este:
http://www.original-design.es/tutoriales/subir_archivos_ftp_php.php
Espero que te sirva y que lo entiendas. En tu caso en el mismo archivo de subir_archivos.php puedes incluir la sentencia de MySQL para que te escriba la url, y as* ya lo tienes todo

PD: Muevo el post a ayudas de PHP ya que la duda corresponde mas con ello
Citar y responder
  #7  
Old 12-11-2007, 09:45 AM
Joan
 
Posts: n/a
Predeterminado

He ido a tutoriales PHP, y no he visto mis consultas, asi que te escrivo por este tutorial ( lo siento )...
He hecho la prueba con las indicaciones de tu tutorial en: http://www.original-design.es/tutori...os_ftp_php.php
me ha salido bien: cargo el archibo mediante "examinar" de la pagina del formulario ( que en mi caso la llamo prova-fotos.php ) y se me redirecciona a la pagina ( subir_archibo.php ) con el siguiente mensage (el archivo se a subido correctamente al servidor).Pero cuando voy a la carpeta donde he especificado en el Script que me tiene que enviar las fotos, no hay nada, no se si esque hay algo del Script que tenga mal, te lo adjunto para haber si ves algo raro..... ( por cierto,!!! la carpeta del destino de las imagenes, se llama "imagenes-sql" y esta carpeta SI tiene permiso de Lectura, escritura y ejecucion el usuario.) asi que no se porque no me sube la imagen a mi carpeta, haber si puedes ayudarme...

<?php
$directorio_archivo = "/httpdocs/imagenes-sql/ "; // tipo /home/user/public_html/archivos/
$nombre = strtr($_FILES['archivo']['name'], "ñ'ÁÉÍÓÚÀÈÌÒÙáé*óúäëïöü*èì òù ", "n-AEIOUAEIOUaeiouaeiouaeiou_");
$tamanio = $_FILES['archivo']['size'];
$tipo = $_FILES['archivo']['type'];
copy($_FILES['archivo']['tmp_name'], $directorio_archivo.$nombre);
echo "el archivo se a subido correctamente al servidor<br>";
?>
Citar y responder
  #8  
Old 12-11-2007, 04:24 PM
sirviejo
 
Posts: n/a
Predeterminado

chequea que el directorio tenga permisos de escritura.. si no no te va a dejar subirlo.
Con el script que estas haciendo la leyenda "el archivo se a subido correctamente al servidor" siempre te va a aparecer, dado que es parte del flujo y no esta dentro de ninguna condicion.
saludos.. dentro de un rato te pongo mi script para subir archivos.
Sirviejo.
Citar y responder
  #9  
Old 12-11-2007, 05:37 PM
sirviejo
 
Posts: n/a
Predeterminado

Con este script, se puede comprobar si se cometen errores, lo que hace es subirlo a una carpeta temporal y luego moverla al lugar adecuado.
<?php
$error = false;
// compruevo si el archivo tiene el formato adecuado.
if ($_FILES["archivo"]["type"]!="image/jpeg") {
$error = true;
}
// verificamos el peso adecuado, cambiar el 200000 por el peso que quieras
if ($_FILES["archivo"]["size"] > 200000) {
$error = true;
}
// comprovamos si se han producido errores en la carga
if ($_FILES["archivo"]["error"] != 0) {
$error = true;
}
// javascript para volver para atras si hay errores
if ($error) {
echo ("<javascript language='javascript' type='text/javascript'>");
echo ("location.href='prova-fotos.php';");
echo ("</javascript>");
}
//Para finalizar intentamos grabar y comprovamos si se hizo bien
$archivoRecibido=$_FILES["archivo"]["tmp_name"];
// cambiar esto por una variable llamada del form
$destino="archivos/archivotmp.jpg";
if (move_uploaded_file ($archivoRecibido,$destino)) {
echo ("Archivo Grabado correctamente");
} else {
echo ("el archivo no se pudo grabar");
}
?>

saludos,
sirviejo

PD: sorry por hacer dos post. pero los hice desde mi trabajo. salteando el proxy :P
Citar y responder
  #10  
Old 12-11-2007, 08:47 PM
Joan
 
Posts: n/a
Predeterminado

gracias por el script....!!!
disculpa mi ignorancia, pero no entiendomuchosobre el lenguaje que aplicas, pero intento aprender, quisiera saber si el script completo que me has posteado, en que archibo tengo que copiarlo ???, en el de "buscar archivo", o en el de "subir-archibo" o en otro ????....

he hecho ua prueba creando un archibo nuebo donde puedo acceder a el con un acceso directo de mi pagina "index" el cual si doi al link del acceso directo que me envia la la pagina creada con tu script, me sale el siguiente error:

location.href='prova-fotos.php';el archivo no se pudo grabar

podrias explicarme que significa esto ??? ...gracias, gracias.... es realmente lo que dice ???!!!que no puede grabar el archivo ??? pero porque ???


Gracias de antemano....

Editado por Joan en 12-11-2007 a las 08:52 PM.
Citar y responder
Responder


Herramientas Buscar en esta discusión
Buscar en esta discusión:

Búsqueda avanzada
Estilo

Reglas del foro
No puedes iniciar una discusión
No puedes responder a una discusión
No puedes agregar archivos adjuntos
No puedes editar tus posts

El código vB está activado
Emotíconos está activado
El código [IMG] está activado
El código HTML está desactivado
Ir a

Todas las horas son GMT. La hora es 06:30 AM.


Copyright 2007-2008