Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/08/2009, 09:45
una_xikilla
 
Fecha de Ingreso: agosto-2008
Mensajes: 161
Antigüedad: 15 años, 8 meses
Puntos: 0
Ayuda subida y muestra de imágenes

Hola,

Tengo que hacer una página de registro de usuario con todos los datos personales y además tiene que subir su fotografía (aunque es opcional).

He leido que es mejor guardar las imágenes en una carpeta del servidor y que en la base de datos se cargue solamente la ruta a esa carpeta y a la imagen correspondiente...

¿¿ Cómo lo hago ??

Tengo datosusuario.php con el formulario (nombre, apellidos, dirección, etc...) y para la foto tengo: SUBIR FOTOGRAFÍA: <input name="userfile" type="file">
a continuación va a insertar_datos.php

Qué pongo ahí? porque la insercción de los datos me funciona, el problema es la fotografía, que quiero que se muestre y que esté guardada....

He encontrado este código por internet, pero tampoco lo entiendo muy bien...
cómo podría aplicarlo a mi proyecto? qué campo tendría que meter en mi base de datos? porque antes usaba blob, pero con la carpeta no sé qué meter...text?

Código PHP:
<?php
$unique 
time();
$uploaddir $_SERVER['DOCUMENT_ROOT'].'/patch/carpeta/uploads/'.$unique;
$uploadfile $uploaddir $_FILES['userfile']['name'];
$uploadcheck $uploadfile;

if(empty(
$_FILES['userfile']['name'])){
$uploadfile "";}

$update mysql_db_query("$dbconfig[db]","INSERT INTO $dbtable[novedades] (nov_img, nov_titulo, nov_texto, nov_fecha) VALUES ('$uploadfile', '$nov_titulo', '$nov_texto', CURRENT_DATE)") or die(mysql_error());

$borrarID mysql_db_query("$dbconfig[db]","ALTER TABLE $dbtable[novedades] DROP id") or die(mysql_error());
$alterarmysql_db_query("$dbconfig[db]","ALTER TABLE $dbtable[novedades] ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD INDEX (id)") or die(mysql_error());

print 
"<pre>";
if (
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
print 
"El archivo fue subido con éxito";
print 
"Información del archivo:";
print_r($_FILES);
} else {
print 
"El archivo no se pudo subir, información:\n";
print_r($_FILES);
}
print 
"</pre>";
?>