las imagenes se suben atraves de un formulario a una carpeta llamada (imagenes) y se gurada la ruta asi (C:WindowsTEMPphpBFCE.tmp) en la tabla de imagenes de base de datos. me pregunta es quiero que se guardan asi (gato.jpg) para poder mostrarlas despues
la tabla de imagenes
id_imagen
usuario_id
usuario_freg
fichero----------------- aqui se guarda la imagen asi (C:WindowsTEMPphpBFCE.tmp)
descripcion
quiero que se guarde la ruta en la columna de fichero de la tabla imagenes ejemplo asi : arbol.jpg
el formulario
Código PHP:
Ver original
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Documento sin título</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data"> <label>descripcion:</label><br/><BR> <input type="text" name="descripcion" maxlength="15" /><br/> <input name="fichero" type="file" size="35" /> <input name="submit" type="submit" value="Upload!"> </form> </body> </html>
el codigo que sube las imagenes
Código PHP:
Ver original
<?php function mysql_escape($cadena) { //funcion para limpiar campos del form de codigo malicioso } } //empieza la redimension, tomamos la imagen temporal subida que puede ser jpg, png o gif //segun el caso sera jpg, gif, png switch ($info[2]) { case 1: case 2: case 3: // etcétera // } $original = $imagen; $max = 500; //AQUI PONES EL TAMAÑO DE LA IMAGEN A LO QUE QUIERAS segun la tabla donde la muestres if($original_w>$original_h) { $muestra_w = $max; } else { $muestra_h = $max; } imagecopyresampled($muestra,$original,0,0,0,0, $muestra_w,$muestra_h,$original_w,$original_h);//aqui se crea la imagen en la variable $muestra // comenzamos a guardar el archivo $ruta_destino = "imagenes/"; //ponemos la ruta donde queremos almacenar los archivos en el server $namefinal= trim ($_FILES['fichero']['name']); //quito espacios iniciales y finales del nombre del archivo $namefinal= ereg_replace (" ", "", $namefinal); //quito los espacios entre el nombre para no tener despues problemas de codigo $uploadfile= $ruta_destino . $namefinal; //monto la ruta seguida del nombre del archivo en $uploadfile if(imagejpeg($muestra,$uploadfile,'100')) { // se coloca en su lugar final, el 100 el la calidad del jpg echo "<b>Upload exitoso!. Datos:</b><br>"; echo "Nombre: <i><a href=\"".$uploadfile."\">".$_FILES['fichero']['name']."</a></i><br>"; echo "Tipo MIME: <i>".$_FILES['fichero']['type']."</i><br>"; echo "Peso: <i>".$_FILES['fichero']['size']." bytes</i><br>"; echo "<br><hr><br>"; //insertamos en la BD los campos del form if(isset($_SESSION['usuario_id'])) // Aqui actualizaremos el perfil del usuario en la base de datos y le mostraremos que esta conectado { $orden = ("select * from usuarios where usuario_id = ". $_SESSION['usuario_id'] .""); $reg = mysql_query("INSERT INTO datos (usuario_id, fichero, descripcion, usuario_freg) VALUES ('".$usuario_id."', '".$fichero."', '".$descripcion."', NOW())"); } }else{echo "no se guardo la foto, ni se inserto en la Base de Datos";} }else{echo "no se subio foto";} }else{echo "";} //ahora el formulario
las imagenes se guardan bien en la carpeta imagenes
gracias